On 6/04/16 4:49 pm, Linda McIver wrote:
To clarify my data science unit: It will be a basic intro to data
analysis and visualisation, with some spreadsheet work and some
I sought (Research beginner understand error message)
reports on trouble with Haskell error messages and explains how to
read them. (The examples actually look pretty good to me, but I
am not a beginner.) A review of this sort might be helpful to your
is the paper Mark Guzdial mentioned, I think.
looks further at DrRacket (and also at C++).
is about what beginners need in general, by someone who had a great
deal to do with the POP-11 (POPLOG) system and teaching it. He
has little to say about error messages, but a fair bit of attention was
given to them in POP-11, as I recall, and the editor VED was supposed
to help a lot. (Me, I was completely baffled by it...) This
that some teaching environments used language-sensitive editors that
tried to catch syntax errors as you typed.
One of the authors is Bertrand Meyer, inventor of the Eiffel
programming language, very keen on helping people to write
correct programs, and amongst other things developer of a
course (and associated book) using Eiffel, with some novel
ideas. "The results indicate that more detailed messages do
not necessarily simplify the understanding of errors but that
it matters more where information is placed and how it is
This is specifically about type-error messages, a special problem for
functional languages (SML, OCaml, F#, Clean, Haskell, Mercury) using
type inference, where types can be quite complex. Looks like a
nice piece of work, but not really relevant to Python. (The worse
I suppose the Human-Computer Interaction field is where we should
expect such things to be published. I think you would agree with
"It is striking that there is little concern on devising techniques to
help the user of the system ... to do their job properly. This issue
is ignored, not only in compiler textbooks (no matter how recent
... or advanced ... they may be), but also, and most importantly,
by current research directions. This paper has a useful survey of
is about error messages in form processing, but
1. The error message needs to be short and meaningful
2. The placement of the message needs to be associated
with (the thing that's complained of).
mentions work Kathi Fisler is doing in this area; surprise surprise
it's in the context of DrRacket.
Grace has already been mentioned in this thread.
To me it looks harder to get started with than Python.
Asks which error messages are commonest because the
author wanted to "write(e) error explanations for novices".
Has "large data sets [for] Python and Java".
Now this paper says "There is copious literature on writing
good error messages" and lists 6 papers. Explanations
were written for 36 messages. One of the papers is a
1974 one "What the compiler should tell the user" that I
was meaning to mention anyway, although it's rather
This might actually be directly useful to you.
Finally, why Python? If your intention is to teach *data science*,
there is a case to be made for (shudder, nausea) Excel. The
R programming language is admittedly somewhat arcane, but
"R Commander" (http://socserv.mcmaster.ca/jfox/Misc/Rcmdr/)
should be a lot easier for beginners to cope with.
I'm not saying that Python is *wrong*, especially not with NumPy,
SciPy, and so on available, just that it's not *obviously* the best
choice for teaching *data science*. (For teaching *programming*,
that's another question.)
You received this message because you are subscribed to the Google Groups "PPIG
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send an email to email@example.com.
For more options, visit https://groups.google.com/d/optout.