I just pushed a commit that updates the error messages of the teaching languages. With this update, *SL now agrees with the rules of the error message composition guidelines we sent last month.
If you try the *SL languages from the git repository, you will now see that the error messages restrain themselves to a smaller vocabulary base. The sentences are now simpler, and more consistent between error messages. The error messages of check-expect, world and universe are now consistent with those of the language itself. I also updated the documentation to the new vocabulary, and cleaned their layout a bit. Here are a few examples of the changes you will see. old error message new error message --------------------------------- ------------------------------------ image: name is not defined, not a image: this variable is not defined parameter, and not a primitive name planes-direction: this selector planes-direction: expects 1 argument, expects 1 argument, here it is but found none provided 0 arguments define: expected a name for the define: expected a variable, but function's 1st argument, but found found something else something else function call: expected a defined function call: expected a function function name or a primitive after the open parenthesis, but found operation name after an open a number parenthesis, but found a number cons: second argument must be of cons: second argument must be a type <list or cyclic list>, given 1 list, but received 1 and 2 and 2 --------------------------------------------------------------------------- This is a somewhat large patch, and it does not limit itself to changing strings, as one might expect. I had to change a fair amount of code to get the new error messages working, notably in places where *SL leaked error messages from the professional language. So, to everyone reading this, [1] Please make sure all the code you use to teach it still works correctly. If something breaks, e-mail me and I will try to address the problem right away. [2] If you are the author of a teachpack, please update your error messages to match this new style. You can follow the error message completion guidelines, which are now in the main documentation under the "How to Design Programs Teachpacks" header. Send me e-mail if you need help. [3] There is a layout problem in my new documentation I need help with. I tried to abstract the common text between the documentation of the different levels. Possibly because I didn't do it correctly, the macro I am using confuses the layout engine, and it is now inserting lots of spurious new lines whenever there is a @defform. Look at the documentation for beginner's COND, you'll see what the problem is. As always, let us know what you think, feedback is welcome, etc. Guillaume
_________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev