Hi Danilo,

>   If `lambda' (Lisp-defined Procedures) is `lst' why `num' is not?!

I'm not completely sure how you mean that, but you can also "define" a number:

   : +
   -> 270167

   : (def 'plus (- (* 2 135085) 3))
   -> plus

   : plus
   -> 270167

   : (plus 3 4)
   -> 7


>   Even if both `num' and `cnt' are defined in `structures', why `num'
> can not be operated on as a `lst' that it is?!

The digits in a bignum are not numbers, because they have no tag bits. They are
just bit patterns, spanning the full 64 bits (or 32 on pil32). Thus, a bignum is
*not* a list of numbers.


>   I think it would be (uber cute) to implement `num' as `lst' of `cnt'
> as pure PL lib :) .  Even in 32-bit version.

Could be, but you waste 4 bits in each word for the tags. And numeric operations
would have to discard them, getting slower.


>   I think `(doc 'eval)' should be the main part of the Reference :) .

What about "doc/ref.html#ev"?


> As we all know, to implement (define) Lisp /just/ `eval' is enough.
> Who needs 7 primitives ;) ?  `(doc 'lst)' (and `fun'...) is missing :)

Not sure again what you mean. Which 7 primitives?

♪♫ Alex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to