Всяко задание е в отделна поддиректория. В нея се съдържат:
assignment.scm
- тестове за заданиетоREADME.md
- условие
assignment.scm
съдържа unit тестове, чрез които можете да проверите веднага верността на решението си, чрез изпълнение на файла от вашата среда за разработка. Тези тестове са само за ваше улеснение и можете да не се придържате към тях, стига процедурата във финалното ви решение да е с правилното име.
За да е валидно едно решение (т.е. да бъде оценено с ненулева оценка) трябва да са изпълнение следните условия:
- името на файла да е от вида
XX_YYYYY.scm
, къдетоXX
е номерът на заданието, аYYYYY
е факултетният ви номер; например:01_80123.scm
или05_80321.scm
. - името на процедурата да е същото като даденото в условието и в
assignment.scm
(илиassignment-X.scm
) - да се придържа към R5RS, да няма синтактични или други грешки и т.н. (първо се уверете, че кода ви работи в средата за разработка)
- решението да е изпратено в съответното задание в Moodle
За да се оцени решението се изпълняват тестове върху процедурата. Част от тестовите примери са в assingment.scm
файла във всяко задание, но това обикновено не са всички тестови примери, които ще се използват за оценяване.
Тестовете за оценяване на домашните няма да изпробват третирането на невалидни входни данни, тъй като този въпрос е извън обхвата на текущия курс. Разбира се, остава възможността да бъдат подавани „странни“ валидни входни данни.
При оценяването се взимат предвид различията между repl.it и DrRacket. Достатъчно е решенията ви да работят в една от двете среди.
Решения със синтактични или други грешки, водещи до невъзможност за изпълнение на каквито и да било тестове, няма да получават никакви точки. За да избегнете тази неприятна ситуация, изпробвайте кода си в DrRacket с език R5RS, с plt-r5rs
или в repl.it преди да го изпратите в Moodle. Дори решението ви да не е съвсем вярно, то може да мине част от тестовете.
Ако изпратите решенията си достатъчно рано, ще ви изпратя обратна връзка, която включва коментар и предварителна оценка. Дори да имате проблем с решаването на задача, можете да изпратите решението си в Мудъл и ще се опитам да ви помогна с коментара си.
Разбира се, това не важи за решения, изпратени в последната минута. :)
За получаване на оценки за текущ контрол, в края на семестъра ще минавате през задължителна защита на вашите решения - кратка проверка, целяща да гарантира, че наистина вие сте си писали домашните. Според резултатите от защитата точките ви се превръщат в оценки.
Ако някой не е в състояние да аргументира свое решение, то той/тя няма да получи никакви точки за даденото домашно.