Interview with Carl Sassenrath

Started by Fanda, October 08, 2007, 06:06:19 AM

Previous topic - Next topic

Fanda

There is an interesting interview with designer of REBOL:

http://obligement.free.fr/articles_traduction/itwsassenrath_en.php">http://obligement.free.fr/articles_trad ... ath_en.php">http://obligement.free.fr/articles_traduction/itwsassenrath_en.php



[Found on: http://www.rebol.com/">http://www.rebol.com/ ]

newdep

#1
aaaaaaa My favorite language nr: 2 !



;-)



Btw: are you on Altme fanda?



either read http://www.rebol.nl">http://www.rebol.nl  [ print "even more nice links" ] [ print "I love newlisp" ]
-- (define? (Cornflakes))

cormullion

#2
Quote from: "newdep"aaaaaaa My favorite language nr: 2 !


Can you compare the two for me? What is special about Rebol compared with newLISP? And the other way round...?



I can't handle another language yet... :-)

newdep

#3
Pfiuewww.. what a question ;-)



If you would like to know what Rebol realy does, you have to try it out and

read the info on http://www.rebol.com">www.rebol.com. Rebol is a Scheme like language and very

close targeted to human linguistics. Its very flexible in ways of being

a 'type dependent language'. It has dialects, because of its type dependent feature. Its a Relative Expression Based Object Language.



All in all both newLisp and Rebol are very small, flexible, fast, Elegant and

 both intepreted languages and most important much Fun to develop in. (They keep you thinking)



But you cant realy compare them, because they are different languages.



Where newlisp is the language I prefer now best.

(just because its flowing quicker out of my fingers when typing code ;-)





Norman.







Here a very small 'just' and example in coding style ->







NEWLISP ->









;; set your square depth

;; above or at depth 9, have a coffee..!

(setq depth 5)



(seed (nth 6 (now)) )

(define (dirty?) (dolist (y b) (if (index true? (map = x y)) (throw 'true)) ))

(push (setq x (randomize (sequence 1 depth))) b)



(println "rn--- Running!rn")

(setq T (time

  (while (> depth (length b))

    (setq x (randomize (sequence 1 depth) true))

    (if (not (catch (dirty?))) (println (push x b))))

  )

)

(println (last b))

(println "rn--- " T " milliseconds timed!rn")

(exit)










REBOL ->



;

; a latin square in rebol, based on the newlisp latin.lsp version

; by nodep (c) 2005

;



random/seed now



clean?][

 catch [ foreach bb b [for i 1 9 1 [ if = pick bb i pick x i [throw false] true ]]]]



print "---- running ----"



T1: now/time/precise

insert/only b: copy [] random/seed [ 1 2 3 4 5 6 7 8 9 ]

print first b



while [ < length? b 9 ][

 if clean? set 'x random [ 1 2 3 4 5 6 7 8 9 ] [ print x insert/only b x ]]



print rejoin [ "Timed: " now/time/precise - T1 ]



wait 0:0:5

quit
-- (define? (Cornflakes))

cormullion

#4
A good answer! Thanks.



I quickly looked at the Rebol web site - lots to look at, but a bit confusing too - not the language itself, but all the extras/versions/ etc.  Impressive amount of stuff there.



I need more hours in the day... :-)

Fanda

#5
Quote from: "newdep"Btw: are you on Altme fanda?


No, I am not. I am just playing with REBOL ;-)



Cormullion, look in the REBOL/Core Users Guide, you will get the feeling:

http://www.rebol.com/docs/core23/rebolcore.html">http://www.rebol.com/docs/core23/rebolcore.html

especially Chapter 3 - Quick Tour

http://www.rebol.com/docs/core23/rebolcore-3.html">http://www.rebol.com/docs/core23/rebolcore-3.html



For me it's a LISP-like language with lots of power built-in :)



Fanda

tom

#6
I'm not a programmer at all (it's obvious), but I've done more useful things with rebol than I have with newlisp.  I like newlisp better, but some things have never quite clicked for me.  One day they will.  Anyway, I wanted to comment on rebol.  If it wasn't proprietary, I'd probably still use it.



I'm not buying the "open source built on a proprietary core" jazz, either.  Seems like stacking bricks on a basketball.  I was surprised to find that in some cases the licencing really does matter to me.



Now, if we could have something small like newlisp/view, that would be great.  How did Carl and team do that?  Isn't rebol/view still under 500k?  newlisp/java weighs in at a dainty 30 megs or so.  Does that sound right?



There's always gtk-server...

newdep

#7
The Rebol C code is very tight as I understand. And indeed Rebol/view

is very smart made, as a dialect and very flexible, its a full competitor

of i.e. Java or other gfx library's. And in Rebol3 even faster!



But dont be fooled here by the size of rebol, executing rebol/view is

not smaler (still 10 to 15 Mb) than Java is in memory.



Even though building with Rebol/view GFX applications does not mean

they are always meant to be small, but they are smarter for sure.



So the GS server from Lutz, which provides very nice pre-defined functions

is a very good alternative to a GUI. Dont expect the context and object

handling here like rebol does, but GS integrating well into newlisp and I cant

think of any other good GUI alternative that is Multi OS and developed insideout.



Regards, Norman.
-- (define? (Cornflakes))

notchent

#8
I recently discovered newlisp in a posting on the Rebol email list.  Both languages share some useful features (small file size, "batteries included" modules, cross platform GUI, etc.).  If anyone's interested in Rebol, my tutorials may help to introduce it:



http://musiclessonz.com/rebol_tutorial.html">http://musiclessonz.com/rebol_tutorial.html

http://musiclessonz.com/rebol.html">http://musiclessonz.com/rebol.html



The second link has a list of features and benefits explaning the useful characteristics of Rebol, and may be more appropriately concise for readers of this forum.



I love that NewLisp is open source and actively developed.  I'm finding the transition to newlisp from Rebol very comfortable and natural, and I'm looking forward to exploring more!
http://musiclessonz.com/rebol_tutorial.html\">http://musiclessonz.com/rebol_tutorial.html

http://musiclessonz.com/rebol.html\">http://musiclessonz.com/rebol.html

cormullion

#9
Hi! Excellent job on the tutorial... Shouldn't be too hard to translate it to newLISP... :) I'll be pinching some of your ideas too...

notchent

#10
My free time now is much more restricted then when I wrote that tutorial, but translating to Newlisp does sound like a fun project :)  Do you think there's a need for such a tutorial?   Any help translating the example code would be appreciated, and would definitely help speed along my own learning process...
http://musiclessonz.com/rebol_tutorial.html\">http://musiclessonz.com/rebol_tutorial.html

http://musiclessonz.com/rebol.html\">http://musiclessonz.com/rebol.html