You would be mad to use Erzats for performance anyway, so I'd wish for correctness or similarity. It would also serve as a documentation of what it takes to implement a full PicoLisp. Sort of a portable spec.
On June 25, 2014 4:45:12 PM CEST, Alexander Burger <a...@software-lab.de> wrote: >Hi Jon, > >> If you in normal PicoLisp do any of the following, without any use of >‘make' … >> (chain (1 2 3)) >> (link 1 2 3) >> (yoke 1 2 3) >> … then you’ll get a "Not making” error message. >> >> However, if you do the same with Ersatz, you’ll get a >> java.lang.NullPointerException for ‘chain’ and ‘link’. > >You are right, this is a disputable issue. > >In fact, I deliberately omitted the runtime checks for a 'make' >environment in ErsatzLisp, because the JVM already does such a check (a >NullPointerException is also an error message, albeit a rather >unprecise >one). > >If you take a closer look, you see that most explicit error checks >which >exist in PicoLisp are omitted in ErsatzLisp. For simplicity, brevity >and >performance. > > >> For (yoke 1 2 3) you’ll get 3 > >This is indeed unaesthetic, yes. At least here it is needed. > >We could easily add proper error messages to ErsatzLisp too, checking >for non-NULL 'Env.Make' and 'Env.Yoke'. > >How is the general opinion on that? >♪♫ Alex >-- >UNSUBSCRIBE: mailto:email@example.com?subject=Unsubscribe -- Skickat från min Android-telefon med K-9 E-post. Ursäkta min fåordighet.