[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: (*) -> 1
From: |
Tassilo Horn |
Subject: |
Re: (*) -> 1 |
Date: |
Fri, 20 Jan 2023 14:02:43 +0100 |
User-agent: |
mu4e 1.9.16; emacs 30.0.50 |
Jean Louis <bugs@gnu.support> writes:
>> Yes, and I think it's seriously wrong with
>>
>> : (+)
>> -> NIL
>>
>> where its docs say
>>
>> Returns the sum of all num arguments. When one of the arguments
>> evaluates to NIL, it is returned immediately.
>
> For some reason PicoLisp is quite different than other Lisp. I have
> asked author about it.
>
> 15:09 <abu[m]> It is a "feature" that NIL propagates through
> arithmetics
Well, but with (*) and (+), there is no single NIL involved! And in
Elisp (+ nil), where actually a nil is involved, you get an error.
> 15:09 <jmarciano> How does it help instead of providing identity
> elements?
> 15:09 <abu[m]> (*) especially was not contemplated though, it is a
> pretty useless call
> [...]
> 15:12 <abu[m]> What is a call like (*) useful for?
>
> As you see, author also asked naturally why is it useful.
So go and ask why he thinks (apply '+ ()) -> NIL is more useful than 0
given that the sum of the empty set of numbers _is_ 0.
>> So why does it return NIL? And why do you apparently consider that
>> useful? And can something be useful even though it is incorrect?
>
> I find it right as with error raising or nil I can find what is
> wrong.
It's good to signal an error when the expression is wrong as does Elisp
with
(+ nil)
(* 1 2 nil)
(apply #'+ (list 1 nil 19))
(+ 2 "i am not a number")
but when there is no nil or otherwise wrongly typed value involved,
there's nothing to signal.
Bye,
Tassilo
- Re: (*) -> 1, Jean Louis, 2023/01/19
- Re: (*) -> 1, Jean Louis, 2023/01/19
- Re: (*) -> 1, Jean Louis, 2023/01/20
- Re: (*) -> 1, Tassilo Horn, 2023/01/20
- Re: (*) -> 1, Jean Louis, 2023/01/20
- Re: (*) -> 1,
Tassilo Horn <=
- Re: (*) -> 1, Jean Louis, 2023/01/21
- Re: (*) -> 1, Tassilo Horn, 2023/01/21
- Re: (*) -> 1, Emanuel Berg, 2023/01/22
- Re: (*) -> 1, Jean Louis, 2023/01/22
- Re: (*) -> 1, Emanuel Berg, 2023/01/22
- RE: [External] : Re: (*) -> 1, Drew Adams, 2023/01/22
- Re: (*) -> 1, Akib Azmain Turja, 2023/01/22
- Re: (*) -> 1, Emanuel Berg, 2023/01/22
- Re: (*) -> 1, Jean Louis, 2023/01/23
- Re: (*) -> 1, Jean Louis, 2023/01/23