[racket-dev] New error messages for *SL
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20110706/2a5cae31/attachment.html>