| While reading about the empty product, I thought I'd check whether it was present in Arc's (errr....MzScheme's) : C:\home\arc>mzscheme -m -f as.scm
arc> (*)
1
I then got to wondering whether functions could be invoked with 0 args using special syntax. I then discovered that, to my surprise, planting a dot at the end of a symbol caused the REPL to quit: arc>*.
C:\home\arc>
A little bit of probing revealed why it occurred: arc>(ssexpand '*.)
(* #<eof>)
A little more experimentation revealed that (load ...)ing files containing these malformed symbols from the REPL causes the Arc interpreter to quit as well.I found this curious, although I can certainly see why ssexpand would return EOF for "premature" symbol ends. However, I then found that . gets translated to (#<eof> *) and 1..2 gets translated to (1 #<eof> 2) (luckily, .1 gets translated to 0.1).Thus, I thought I'd bring it this curious behavior to the attention of the community -- Arc may have cryptic error messages, but quitting the interpreter upon trying to load malformed ssyntax is as cryptic as they come. |