Re: Minimal keywords needed for constructing a full CL system



Lars Brinkhoff <lars.spam@xxxxxxxxxx> wrote:
+---------------
| rpw3@xxxxxxxx (Rob Warnock) writes:
| > Sidney Markowitz <sidney@xxxxxxxxxx> wrote:
| > > Johan Bockgård wrote:
| > > > Actually, [in Emacs Lisp?] (/ 3 5) ==> 0
| > > CLtL 12.4 Arithmetic Operations / will produce a ratio if the
| > > mathematical quotient of two integers is not an exact integer.
| > Exactly. Which breaks the "equivalent semantics" rule of CLHS 1.7.
| > [So it's going to be hard to use Emac Lisp as the implementation
| > substrate of a conforming "CL subset".]
|
| I don't understand that. I have used Emacs Lisp as the implementation
| substrate of a (purportedly) conforming CL subset, and I didn't find
| the differences between / in Emacs Lisp and Common Lisp to be a hard
| problem. It's probably on par with using, say, C as a substrate,
| which is common enough.
+---------------

So you're saying you implemented rationals in your CL subset?
O.k., then no problem, any more than doing it in C [with all
that that implies!] is a "problem". But in that case you didn't
use Emac's own arithmetic *as* the arithmetic for the subset,
which is what I addressing.

And my apologies if I misunderstood the context of your previous
remarks...

+---------------
| You wouldn't be say that C is an inappropriate *implementation*
| language just because its operators doesn't have a subset of CL
| semantics, would you? Of course, C isn't a CL subset. :-)
+---------------

So is it your opinion that Emacs Lisp is a reasonable -- or at least,
substantially easier/better than C -- implementation substrate for
a conforming CL subset? If so, that's a interesting & potentially
very useful datapoint, since AFAIK Emacs can iteself be compiled
directly from C.


-Rob

-----
Rob Warnock <rpw3@xxxxxxxx>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607

.



Relevant Pages

  • Re: Minimal keywords needed for constructing a full CL system
    ... mathematical quotient of two integers is not an exact integer. ... I have used Emacs Lisp as the implementation ... substrate of a conforming CL subset, ... the differences between / in Emacs Lisp and Common Lisp to be a hard ...
    (comp.lang.lisp)
  • Re: Minimal keywords needed for constructing a full CL system
    ... "/ will produce a ratio if the mathematical quotient of two integers is ... not an exact integer. ... But the original context was Emacs Lisp, ...
    (comp.lang.lisp)
  • Re: Minimal keywords needed for constructing a full CL system
    ... substrate, which would get us a lot closer to a "minimal" subset. ... Ok, in that case, my implementaion uses Emacs Lisp almost exclusively ... I believe you could take the Emacs Lisp language (not the ... It's that sticky little "equivalent semantics" clause that worries me. ...
    (comp.lang.lisp)
  • Re: Qi Seems Great
    ... so far has been that they just make more work for us real programmers. ... I also think that Common Lisp, with the right set of batteries ... non-programmers. ... Emacs rapidly took to writing Emacs Lisp programs, ...
    (comp.lang.lisp)
  • Re: error in unless
    ... True in Common Lisp. ...  Not true in Emacs Lisp. ... if you really need a case-insensitive comarison, ... For any non-Elisping Common Lispers looking on, ...
    (comp.lang.lisp)