On 07/25/2016 05:34 PM, CAI GENGYANG wrote:
> How to debug this error ???
>
> CL-USER 4 : 3 > exercism fetch TRACK_ID
>
> Error: Undefined operator EXERCISM in form (EXERCISM FETCH TRACK_ID).
To start, I don't think what you show above is really what you did. The
error message indicates that the problem is in form
(EXERCISM FETCH TRACK_ID), which is not what appears after the prompt in
the previous line (the parentheses are missing). I'm going to assume
that instead of copying and pasting you retyped the expression and
forgot the parentheses... which in itself shows what the underlying
cause of all your troubles is, ie that you haven't yet grasped the
basics of Lisp.
So, assuming that you actually did type "(EXERCISM FETCH TRACK_ID)" at
the prompt, the explanation is pretty simple: as the error message says
there is no operator called EXERCISM in your Lisp environment. I don't
know where that definition is supposed to come from, if you needed to
load it from a file, or through quicklisp, etc... but whatever it was,
you didn't do it.
If you had really typed "exercism fetch TRACK_ID" at the prompt, you
should have received a different error message: typing a symbol at the
prompt causes Lisp to evaluate it, ie return its current value as a
variable, and I'm pretty sure that you've not used the symbol exercism
as a variable. So you should have gotten a message saying "unbound
symbol EXERCISM" or something similar.
There's a final possibility, ie that you're working with a weird
implementation of Lisp that automatically puts parentheses around your
expressions when you forget them... but I've never seen one that does
that. What Lisp implementation are you using, just to cover all
possibilities?
Alberto