Open lokarM opened 3 years ago
@lokarM - a lahko dodaš kakšen screenshot in napišeš par alinej, v čem so razlike s Tomotom in kaj bi bilo vredno prenesti v Tomota?
Na koncu sporočila sem imel tole - ker pa se ne veže neposredno na Pedal, dodajam spredaj (ne vem, kam bi načeloma bilo bolj smisleno dati - se opravičujem Matiji, ker dodatnoi ustvarjam zmedo)
Predlagam pa, da bi najprej (preden se lotimo vmesnika za sestavljanje) naredili sledeče:
===========================================================================
Glavna novost Pedala je, da ima poseben jezik za pisanje testov, oziroma, da so ustvarili API s Feedback Functions, ki se nekako "obesijo" na asserte.
Tega se verjetno ne bomo lotili, oziroma le posredno s pomočjo upo. vmesnika za sestavljanje nalog. Povod za njihov pristop je bil:
_When we first giving automated feedback, our scripts became a pile of if statements and messages._
Pedalova shema:
Da bi lahko podrobneje ocenil, ali se da kaj od njihove kode neposredno (oz. z malo napora) uporabiti na Tomu, pa imam žal premalo praktičnega vedenja o kodiranju.
================================================================================ Je pa v primerih, ki jih najdemo na https://pedal-edu.github.io/pedal/teachers/examples.html kar nekaj dobrih idej, kaj bi bilo fino, da v Tomu imamo, tudi, če se stvari ne lotimo "po njihovo".
Jih bom v nasednjem komentarju predstavil nekaj.
Nasploh menim, da bi vmesnik za sestavljanje nalog z vsemi podnalogami bil lahko samostojen MileStone, z vrsto "podzadev" (issues)
primeri s Pedal:
Koristno se mi zdi:
lep način povratne informacije pri uporabi napačnega prijema
if "$" in get_program(): explain("You should not use the dollar sign ($) anywhere in your code!", title="Do Not Use Dollar Sign" priority='syntax', label="used_dollar_sign")
zagotovitev, da se uporablja konstanta ... ensure_literal(9.5)
Ali pa take stvari:
(da ne uporabi določene knjižnice)
prevent_import('re', message="Using Regular Expressions would be a good idea." " But no, you may not use them here.", label="imported_re", title="No Regular Expressions")
(standardna napaka, da je v funkciji print namesto return )
prevent_printing_functions() ensure_functions_return()
ITD
Če bomo razmišljali o nadgradnji Toma, se verjetno splača pogledati https://pedal-edu.github.io/pedal/. Načeloma ima Pedal podobno filozofijo glede povratnih informacij ...