-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rekursion in Einreichungen #18
Comments
Die Rekursionserkennung (syntaktisch) müsste sich dabei auf die gesamte Einreichung beziehen, also nicht nur ein einzelnes Prädikat prüfen. Damit etwa das "Verbot", sub(U,V,W) :- subRek(U,V,W).
subRek(U,z,U).
subRek(s(U),s(V),W) :- subRek(U,V,W). Andererseits sollte sich die Erkennung nur auf die Studierendeneinreichung beziehen, nicht auf die versteckten Definitionen der Aufgabenkonfiguration. Also wieder etwa in der |
Alternativ wäre vielleicht auch denkbar, die Konfigurierbarkeit feinkörniger zu machen, indem angegeben wird, welche Prädikate rekursiv sein sollen oder nicht sein sollen. Aber das ist möglicherweise Overkill bzw. den Aufwand nicht wert. |
Die Erkennung sollte auch mutual recursion erfassen (was den Ansatz, einzelne Prädikate als rekursiv/nicht-rekursiv zu deklarieren, wahrscheinlich noch weniger attraktiv macht). |
... könnte erkannt und unter Umständen (konfigurierbar) "bemängelt" werden.
Beispiel: Wenn in etwas wie der
valid/summer
-Aufgabe aus Versehen etwas Rekursives aufritt, liegt wahrscheinlich ein Missverständnis vor, auf das Studierende hingewiesen werden könnten.anderes Beispiel: Wenn bei der
sub
-via-add
-Aufgabe doch eine der vorab bekannten rekursiven Lösungen fürsub
eingereicht wird, könnte das zurückgewiesen werden.Sinnvoll wäre wohl ein Parameter, mit dem man als Aufgabensteller je nach Wunsch folgende Dinge ausdrücken kann:
The text was updated successfully, but these errors were encountered: