Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Kazimir Majorinc

#376
Anything else we might add? /
May 25, 2008, 11:59:36 AM
I do not like "begin", because I wander why there is no "end". But I didn't replaced it yet.



But I happily replaced "lambda" with "function" and "lambda-macro" with "macro".
#377
Anything else we might add? /
May 20, 2008, 08:36:11 PM
Quote from: "Jeff"What other reasonable implementation for a singly linked list is there?  




That is the point, Jeff - lists do not need to be represented as single linked lists internally. User does not care how lists are represented internally, he only needs some set of operations, and if possible, that these operations are fast enough. With single linked lists, alot of things are slow.



Double linked lists are obvious improvement, but better than that is possible. I remember when C had no libraries, I used to implement lists as some combination of binary trees and double linked lists and every operation was very fast.



Of course, one can do such things as well in Lisp, but it is better that they are available out of the box! Especially because only code stored in default lists can be evaluated as code; code stored in some user defined lists cannot.
#378
Anything else we might add? /
May 20, 2008, 11:06:44 AM
By "basic" I meant that Lisp is about lists, "list processing language", and lists can be implemented (and processed) with or without cons.
#379
Anything else we might add? /
May 19, 2008, 05:05:17 PM
Quote from: "rickyboy"Graham is correct.  The pair (or cons cell) is really the primitive type in Lisp -- it is more primitive than the list.  


It is - but it does not need to be. Single linked list was  good choice for basic data structure when computers had very little available memory. Today it is not the case any more, so it is reasonable to chose some more sophisticated list data structure as a basic one.
#380
Anything else we might add? /
May 19, 2008, 02:25:42 PM
True, CL has goto, although bit restricted (no jumps to nested tags) but continuations and catch/trow are different, they cannot completely replace goto's (for example that "10 goto 90" statement) although they can obviously do some things goto's cannot.
#381
Anything else we might add? /
May 19, 2008, 11:39:33 AM
Quote from: "xytroxon"And this LISP-"mess" is more serious than the dreaded GOTO.


I like GOTO. Only way I know for simulating labyrinth in code (not in data) is by using GOTOs.



5 print "start "; time

10 if (rnd>0) then goto 30 else goto 80

20 if (rnd >0) then goto 90 else goto 40

...

90 Print "end "; time



Because of that, I think we need some form of GOTO in Lisp. Another reason is that, of course, assembler has GOTO and McCarthy's intention was to make "higher level assembler."
#382
Anything else we might add? /
May 18, 2008, 11:19:14 AM

(if (> a b)
   (then
      ; do somethings
   )
   (else
      ; do some other somethings
   )
)


But philosophy behind Lisp syntax is that code=data, i.e. language is optimized to be easily processed as data, not to be human readable. If Lisp has sense at all, then this idea shouldn't be compromised.
#383
Anything else we might add? /
May 16, 2008, 03:07:11 PM
I think he has good strategy - to develop superior core language first. Core is for decades, libraries can be added gradually. And superior core + his celebrity appeal that can attract many hackers to contribute open source + enough money to pay few excellent ones to work full time on libraries, tools, documentation etc - and he has everything for success. But I think his core design decisions are not really significant improvement. And some are even step back, i.e. [ ... _ ... ] syntax is not Lisp any more. Newlisp is much bolder improvement in core language.
#384
newLISP newS /
May 15, 2008, 10:41:02 PM
I wrote simple (actually extremely) simple benchmark that tested speed of eval in Newlisp and few Scheme and Lisp implementations. It turns that Newlisp eval ... well, look for yourself.
#385
newLISP newS /
May 14, 2008, 01:20:43 PM
OK, these two are different in Newlisp.



It seems that (quote <expr>) has advantages, because it is list, and it can be analyzed, while '<expr> is not a list, and it must be evaluated first, to get rid of quote and then analyzed. Is it right?



Is there any advantage of ' (except it is shorter?)
#386
> (println (= ''x '(quote x)))
nil


Is it bug or feature? 9.3.12 version.
#387
newLISP newS /
May 09, 2008, 10:56:00 AM
One thing I perhaps should say as a new user in a relatively small community is that I do not expect any backward compatibility in the future, i.e. if author (or community) see an opportunity to improve the language, libraries breaking that compatibility, excellent, I'll adapt. Maybe it is already your policy, but I had to support the case.
#388
newLISP newS / Promoting my blog.
May 08, 2008, 08:10:26 PM
Hello



I'm new user of Newlisp, and I'll use it for next few months and hopefully longer. I wish to promote my blog at



http://kazimirmajorinc.blogspot.com">http://kazimirmajorinc.blogspot.com



Thanks to author and contributors who made it possible.