newLISP now on Graham's list

Started by HPW, September 20, 2004, 06:52:40 AM

Previous topic - Next topic

HPW

newLISP has now it's place on Paul Graham list of Lisps:



http://www.paulgraham.com/lisps.html">http://www.paulgraham.com/lisps.html



(He finaly read my mail from some weeks ago)



;-)
Hans-Peter

HPW

#1
And we got more noise here:



http://lemonodor.com/">http://lemonodor.com/



and here:



http://lambda-the-ultimate.org/">http://lambda-the-ultimate.org/



http://lambda-the-ultimate.org/node/view/257#comment">http://lambda-the-ultimate.org/node/view/257#comment
Hans-Peter

Lutz

#2
Traffic to newlisp.org was up almost 10 times after the lambda-the-ultimate.org posting. Most of it's members are CL ans Scheme users, some of them seem to be open to new ideas and doing things in a different way in LISP.



Downloads on newlisp.org have exploded too and I also have put links to Sourceforge on newlisp.org to divert some of the download raffic. We have  6 new members here on the board in just one week. I guess that Ryon, who hosts this board, has also seen substantial traffic increase.



Tomorrow newLISP 8.2.0 comes out, the official release to introduce threads (was first in 8.1.6).



This and the coming weeks many colleges start their fall semesters and that always brings new users too.



Lutz



ps: thanks for asking Paul Graham to include newLISP on his list. He is someone proposing changes in LISP and newLISP is a LISP trying to do just that.

newdep

#3
:-) Nice nice... ;-)
-- (define? (Cornflakes))

pjot

#4
Well, I also saw the hits on my site increasing... ;-) they almost all came from the newLisp "libraries" page, sometimes more than 10 per day. I already wondered what caused this, but now I know. A good thing newLisp gets more publicity!

Lutz

#5
Norman, even the sales of Cornflakes went up :)



Lutz

newdep

#6
hahahaha...



well overhere they did for sure.. even my snippets page

has 10 hits a day more now... It boosts ;-)...
-- (define? (Cornflakes))

HPW

#7
There are more rumors on comp.lang.lisp these days:



lin8080 (lin8080@freenet.de)

wrote:
Quote
Well, I love it.



Since version 2.0 I know this nice softpile. It was my first lisp

experience on dos5.0-386/33er box. The turn around version 6.3 (the last

version before win98 gets old) runs also as one *.exe with wine under

linux. The file is only 463kb ... and can move the smile.bmp around the

screen. :)



There is more to say, but test it. The code is Scheme oriented and there

are not very much specials, but it shows, what 'portable can be. You can

look at nuvatec.com, maybe they had the older versions still online.



Worth learning it? Hmmm... when you are tired with all that high level

stuff you will have lots of fun with it. Pscht, this is a secret hint:

there is not much to learn, just copy and paste and modify from the

docus and you can cross high mountains. The designers seem to know how

to spell intuition.



Something other strange I know is plisp, but don't know whether it is

supported.



stefan




Raffael Cavallaro (raffaelcavallaro@junk.mail.me.not.mac.com)

wrote:
Quote
> Well, I love it.



I find it amusing 'cause it's good for WTF! style yucks. I would never

trust it for serious work.



For example:



raffaelc$ newlisp

newLISP v.8.1.7 Copyright (c) 2004 Lutz Mueller. All rights reserved.



> (defun factorial (x) (if (< x 2) 1 (* x (factorial (- x 1)))))

(lambda (x)

 (if (< x 2)

  1

  (* x (factorial (- x 1)))))

> (factorial 5) 120

> (dotimes (n 50) (begin (print (factorial n)) (print "n")))

1

1

2

6

24

120

720

5040

40320

362880

3628800

39916800

479001600

1932053504

1278945280

2004310016

2004189184

-288522240

-898433024

109641728

-2102132736

-1195114496

-522715136

862453760

-775946240

2076180480

-1853882368

1484783616

-1375731712

-1241513984

1409286144

738197504

-2147483648

-2147483648

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

"n"

>



Hmmm...

So I consulted the manual:



"Calculations which result in values bigger than 2,147,483,647 or

smaller than |2,147,483,648 wraps around from positive to negative or

negative to positive numbers."



I fail to see how this is a step forward for lisp. Though I think it is

appropriately named - sort of like Orwell's newspeak...


Some love it and the other's .....
Hans-Peter

Lutz

#8
He could have just defined it using floating point arithmetik:





(define (factorial x) (if (< x 2) 1 (mul x (factorial (sub x 1)))))



and then it will work just fine.



If he dosn't like the possibility of Integer Arithmetik in a scripting language, he can do:



(constant '+ add)

etc



Lutz



ps: can you forward that to him? Where did this appear?

HPW

#9
>Where did this appear?



http://groups.google.com/groups?group=comp.lang.lisp">http://groups.google.com/groups?group=comp.lang.lisp



>ps: can you forward that to him? Where did this appear?



I have posted your answer to comp.lang.lisp.

Need some hours to appear there.
Hans-Peter

mrd

#10
Quote from: "Lutz"He could have just defined it using floating point arithmetik:


Lutz, please be a little more sensible.  Do not abuse floating point arithmetic like this, it is causing us all to laugh at you.  Floating point arithmetic is for INEXACT CALCULATIONS ONLY.  Using floating point representation as a stand-in for real numbers is a classic newbie mistake.  Floating point has its uses, but none of them include representing arbitrary precision exact integers.   The correct solution is to implement proper bignum support just like every other Lisp.  While you're at it, do polymorphic arithmetic operations.  Having +, -, *, and / only work on machine-sized integers (and no rational type) is lame.





http://en.wikipedia.org/wiki/Floating-point">Wikipedia entry on Floating Point Arithmetic



http://docs.sun.com/source/806-3568/ncg_goldberg.html">What Every Computer Scientist Should Know About Floating Point Arithmetic

Excalibor

#11
Quote from: "mrd"
(...) Floating point has its uses, but none of them include representing arbitrary precision exact integers.   The correct solution is to implement proper bignum support just like every other Lisp.  While you're at it, do polymorphic arithmetic operations.  Having +, -, *, and / only work on machine-sized integers (and no rational type) is lame.


While having the complete Scheme's or Common Lisp number tower would be very nice, in practical terms many languages implement BigNum arithmetics via libraries, which take the complexity out of the core of the language/interpreter and move it into user space, where it belongs...



I agree that differentiation between integers and floats in a dynamicallly typed language may be a premature optimization, this is not an interpreter designed for number crunching, thus having BigNums as a library should be more than okay...



Same goes to your comments regarding +, -, etc... newLISP is different to other  Lisps, constructive proposals to make it better than it is are welcome by its COmmunity and I'm sure by the creator as well, but there are ways of doing so, for example by offering code... even polite code would serve...



regards,

david

Lutz

#12
I agree with mrd (thanks for the links and welcome to the discussion board) that floating points are for INEXACT CALCULATIONS ONLY, which is one of the reasons newLISP still maintains integer arithmetik (although only 32 bits). I have looked into arbitrary size integer arithmetik, but felt that it is too much overhead to implement in a small scripting language like newLISP.



Pretty much all scripting applications do just fine with 32-bit integers and it is nice to stick to integer arithemtik in some areas of applications.



Moving newLISP to 64bit integers when 64 bit computing becomes mainstream will be easy. That still would not be bignum but a step forward. (Note that the current 'linux64' compile flavor still produces a 32bit newLISP, but running on a 64bit CPU).



People who do bignum application perhaps shouldn't use a scripting language like newLISP. Those bignum applications would probably involve heavy number-crunching which is more suited to do in a compiled language.



Perhaps a nice compromise would be to have bignum library written in 'C' and import it into newLISP which is more or less what David is suggesting. This library then could have other math stuff too, used by people dealing with bignums.



Lutz

HPW

#13
The echo:



Mario S. Mommer (m_mommer@yahoo.com)

Wrote:
Quote
lisp.3.hpw@spamgourmet.com (HPW) writes:

> Reposted from newlisp forum.



Is this for real or are you making this up?



> He could have just defined it using floating point arithmetik:

>

>

> (define (factorial x) (if (< x 2) 1 (mul x (factorial (sub x 1)))))

>

> and then it will work just fine.

>

> If he dosn't like the possibility of Integer Arithmetik in a scripting

> language, he can do:

>

> (constant '+ add)

> etc

>

> Lutz



This is so absurd it is (almost) no longer funny.



Think bignum, man!


So lets stop lisp-language wars and go scripting.

;-)
Hans-Peter

Lutz

#14
New users of newLISP coming from Common Lisp or other Lisps, will naturally try to understand newLISP, using concepts they have learned in Common Lisp, and they try to define newLISP in Common Lisp terms.



I believe that newLISP's concepts are easy enough to be understood on it's own terms.



Lutz