Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

What does REBOL fix?

 [1/66] from: SunandaDH:aol at: 13-Dec-2003 19:32


Can we find a snappy one-liner? http://www.paulgraham.com/fix.html Sunanda.

 [2/66] from: tomc:darkwing:uoregon at: 13-Dec-2003 17:05


because syntax is scary On Sat, 13 Dec 2003 [SunandaDH--aol--com] wrote:

 [3/66] from: gchiu:compkarori at: 24-Dec-2003 22:51


Re: What does REBOL fix?
> Can we find a snappy one-liner? > > http://www.paulgraham.com/fix.html > > Sunanda. >
Because Lisp is too scary Because Arc is too late :) -- Graham

 [4/66] from: john-harbaugh:earthlink at: 13-Dec-2003 21:56



 [5/66] from: lmecir:mbox:vol:cz at: 14-Dec-2003 11:04


- everybody can teach me a dialect - lisp is scary - other languages aren't portable

 [6/66] from: seth:chromick:earthlink at: 14-Dec-2003 6:10


Ladislav Mecir wrote:
>- everybody can teach me a dialect >- lisp is scary >- other languages aren't portable >
rebol - you don't have to choose between flexible, powerful, and easy to understand rebol - because nothing is more fun than rebol :) rebol - because programming doesn't have to be difficult!

 [7/66] from: brunobord:tele2 at: 14-Dec-2003 13:38


[SunandaDH--aol--com] wrote:
>Can we find a snappy one-liner? > >http://www.paulgraham.com/fix.html > >Sunanda. >
REBOL - Because other languages are not elegant enough -- Bruno Bord

 [8/66] from: nitsch-lists:netcologne at: 14-Dec-2003 16:51


Am Sonntag 14 Dezember 2003 01:32 schrieb [SunandaDH--aol--com]:
> Can we find a snappy one-liner? > > http://www.paulgraham.com/fix.html > > Sunanda.
Lisp and Rebol are like cats and dogs: Both understand you. But dogs like teamwork, while cats ignore you climbing trees. :) -Volker

 [9/66] from: greggirwin:mindspring at: 14-Dec-2003 11:23


Hi Sunanda, Sac> Can we find a snappy one-liner? Forth is scary and Logo isn't taken seriously. -- Gregg

 [10/66] from: gedb01:y:ahoo at: 15-Dec-2003 10:21


--- Gregg Irwin <[greggirwin--mindspring--com]> wrote: >
> Hi Sunanda, > > Sac> Can we find a snappy one-liner? >
Because every other language is trapped on just one computer. ________________________________________________________________________ BT Yahoo! Broadband - Save £80 when you order online today. Hurry! Offer ends 21st December 2003. The way the internet was meant to be. http://uk.rd.yahoo.com/evt=21064/*http://btyahoo.yahoo.co.uk

 [11/66] from: joel:neely:fedex at: 15-Dec-2003 6:51


Hi, Ged, Ged Byrne wrote:
> Because every other language is trapped on just one computer. >
Let's be fair. There are MANY languages that are highly portable in today's world: Perl, Python, Ruby, Java, and a whole slew of open-source efforts. And we're still waiting for the MacOS/X version of /View... -jn-

 [12/66] from: jason:cunliffe:verizon at: 15-Dec-2003 10:57


- Rebol fixes boredom and conformity.. - Rebol because its different and fun - Rebol fixes itself :-)

 [13/66] from: jason:cunliffe:verizon at: 15-Dec-2003 10:55


- Because Life is a dream and everythind and all Data is a stream - ODTAA: one damn thing after another. Rebol serializes Data by default. - Rebol - the Killer Serial App

 [14/66] from: gedb01:yah:oo at: 15-Dec-2003 16:11


I'm wasn't referring to the availability of Rebol on different platforms. What I was referring to was the distributed nature of Rebol, the facts that it is designed for writing applications that run on several computers. REBOL was designed to solve one of the fundamental problems in computing: the exchange and interpretation of information between distributed computer systems. http://www.rebol.com/rebol-intro.html --- Joel Neely <[joel--neely--fedex--com]> wrote: >
> Hi, Ged, > Ged Byrne wrote:
<<quoted lines omitted: 14>>
> [rebol-request--rebol--com] with unsubscribe as the > subject.
________________________________________________________________________ BT Yahoo! Broadband - Save £80 when you order online today. Hurry! Offer ends 21st December 2003. The way the internet was meant to be. http://uk.rd.yahoo.com/evt=21064/*http://btyahoo.yahoo.co.uk

 [15/66] from: jason:cunliffe:verizon at: 15-Dec-2003 12:02


> What I was referring to was the distributed nature of > Rebol, the facts that it is designed for writing > applications that run on several computers.
Yes but that is still also true for HTML, XSLT, Perl, Python, PHP, Java, C, etc.. - Jason

 [16/66] from: greggirwin:mindspring at: 15-Dec-2003 10:48


Hi Ged et al After reading your post, I'd like to submit a couple more ideas: The world needed more than just another 'programming' language It's all about communication -- Gregg

 [17/66] from: gedb01:yaho:o at: 15-Dec-2003 18:25


Hi Jason --- Jason Cunliffe <[jason--cunliffe--verizon--net]> wrote: >
> Yes but that is still also true for HTML, XSLT, > Perl, Python, PHP, Java, C, > etc.. > > - Jason
It is true for a combination of these languages. For example, you may have PHP on the server emitting XML that then gets transformed to HTML which then gets rendered on the users browser. Embedded within the HTML is Javascript for handling the users events. For a standard web app Communications between the server and client are encoded using a combination of URL, QueryString, headers and HTML. Not one of the languages can handle the whole thing. The closes you could get would be to have a Java server and a Java applet or application communiacting via socket. To do this your still having to use additional libraries. You would still have to create or implement a protocol by parsing the data from the sockets stream and reacting to its content. This is because the langauges were designed to run on and use the facilities of a single machine. The physical boundaries are reflected in the language, and have to be coded around. With Rebol the one language does all of this. Rebol handles the CGI, it describes the content and format of the user interface. It describes how the interface should react to user requests. The messages passed between client and server are themselves dialects of Rebol. This is because Rebol was designed to be able to run across multiple machines. Whereas the traditional implementation is a variety of languages, protocols and platforms working together the result with Rebol is effectively a single, distributed application. ________________________________________________________________________ BT Yahoo! Broadband - Save £80 when you order online today. Hurry! Offer ends 21st December 2003. The way the internet was meant to be. http://uk.rd.yahoo.com/evt=21064/*http://btyahoo.yahoo.co.uk

 [18/66] from: maximo:meteorstudios at: 15-Dec-2003 13:29


data is more than just bits and bytes Elegance through simplicity Learn once, apply throughout it slices, it dices, now I'm learning it to do my coffee at 7h00 AM cause statements and variables are obsolete -MAx --- You can either be part of the problem or part of the solution, but in the end, being part of the problem is much more fun.

 [19/66] from: jason:cunliffe:verizon at: 15-Dec-2003 14:26


> With Rebol the one language does all of this. Rebol > handles the CGI, it describes the content and format
<<quoted lines omitted: 8>>
> the result with Rebol is effectively a single, > distributed application.
Well yes and no. Python and others do all that. Ok You probably need to load a module, but in reality that's how all programs do it. Yes sure Rebol bundles core internet protocols without need to load anything. But any serious Rebol application is going to load other scripts anyway, for example rugby, XML, ML etc. How many webservers do you know are written in rebol and in active in real world use ? For example is rebol.com using a rebol-based web server ? Simply I dont think it is essential or necessarily desirable to do it all in one language. What is essential is easy interoprability. Most of the good internet languages, once a well written module exists come down to a couple of lines only import xyz init xyz doit etc.. Rebon is sweet and short. For verbosity I'd say Python is perhaps half-way between Java and Rebol. But being ineractive much faster than Java and more fun to play with like Rebol. Here's a simple FTP session example from the docs http://www.python.org/doc/current/lib/module-ftplib.html - Jason

 [20/66] from: AJMartin:orcon at: 24-Dec-2003 22:51


REBOL - When one language just isn't enough. Andrew J Martin Speaking in tongues and performing miracles. ICQ: 26227169 http://www.rebol.it/Valley/ http://valley.orcon.net.nz/ http://Valley.150m.com/

 [21/66] from: jason:cunliffe:verizon at: 16-Dec-2003 0:45


> REBOL - When one language just isn't enough.
nice :-)

 [22/66] from: lmecir:mbox:vol:cz at: 16-Dec-2003 9:36


A J Martin napsal(a):
>REBOL - When one language just isn't enough. >
I like it. :-)

 [23/66] from: carl:cybercraft at: 24-Dec-2003 22:51


On 14-Dec-03, [SunandaDH--aol--com] wrote:
> Can we find a snappy one-liner? > http://www.paulgraham.com/fix.html
REBOL: XML can't parse itself. -- Carl Read

 [24/66] from: stasil213:yaho:o at: 16-Dec-2003 10:13


On 14-Dec-03, [SunandaDH--aol--com] wrote:
> Can we find a snappy one-liner? > http://www.paulgraham.com/fix.html
Sassenrathian Dialectic: Lisp is powerful; Logo is fun. But C is practical. Rebol is powerful, fun, and practical. -- Stan Silver

 [25/66] from: g:santilli:tiscalinet:it at: 16-Dec-2003 10:38


Hi Jason, On Monday, December 15, 2003, 6:02:50 PM, you wrote: JC> Yes but that is still also true for HTML, XSLT, Perl, Python, PHP, Java, C, JC> etc.. How do you MOLD some PHP code and send it to another computer? ;-) Regards, Gabriele. -- Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer Amiga Group Italia sez. L'Aquila --- SOON: http://www.rebol.it/

 [26/66] from: g:santilli:tiscalinet:it at: 16-Dec-2003 10:41


Hi Jason, On Monday, December 15, 2003, 8:26:50 PM, you wrote: JC> Simply I dont think it is essential or necessarily desirable to do it all in JC> one language. JC> What is essential is easy interoprability. What is essential is simplicity. Any new piece you have to add adds complexity, and complexity will in the end turn out against you. Regards, Gabriele. -- Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer Amiga Group Italia sez. L'Aquila --- SOON: http://www.rebol.it/

 [27/66] from: stasil213:yaho:o at: 16-Dec-2003 11:01


On 14-Dec-03, [SunandaDH--aol--com] wrote:
> Can we find a snappy one-liner? > http://www.paulgraham.com/fix.html
(more in the spirit of the above web page) Lisp is powerful. Logo is fun. But C is practical. -- Stan Silver

 [28/66] from: petr:krenzelok:trz:cz at: 16-Dec-2003 11:02


Gabriele Santilli wrote:
>Hi Jason, > >On Monday, December 15, 2003, 6:02:50 PM, you wrote: > >JC> Yes but that is still also true for HTML, XSLT, Perl, Python, PHP, Java, C, >JC> etc.. > >How do you MOLD some PHP code and send it to another computer? ;-) >
Well, OTOH, AFAIK :-) (what an abbreviations :-), Rebol is not fully serialisable- is it? Try sending event block to another View ;-) ... and surely not only that. Isn't even Python (stackless or what version it is) going further in that regard? -pekr-

 [29/66] from: gedb01::yahoo at: 16-Dec-2003 10:20


I like this. How about taking it a little further: REBOL - You want many languages running on many machines, but a single, simple foundation. --- Jason Cunliffe <[jason--cunliffe--verizon--net]> wrote: >
> > REBOL - When one language just isn't enough. > > nice :-) > -- > To unsubscribe from this list, just send an email to > [rebol-request--rebol--com] with unsubscribe as the > subject. >
________________________________________________________________________ BT Yahoo! Broadband - Save £80 when you order online today. Hurry! Offer ends 21st December 2003. The way the internet was meant to be. http://uk.rd.yahoo.com/evt=21064/*http://btyahoo.yahoo.co.uk

 [30/66] from: g:santilli:tiscalinet:it at: 16-Dec-2003 11:32


Hi Petr, On Tuesday, December 16, 2003, 11:02:46 AM, you wrote: PK> Well, OTOH, AFAIK :-) (what an abbreviations :-), Rebol is not fully PK> serialisable- is it? We're not talking about generic data serialization; we're talking about the fact that code is just data that you can manipulate and send around. You can only get close to this with Lisp-like languages, but then they're almost always compilers so you'd have troubles anyway trying to manipulate code. Regards, Gabriele. -- Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer Amiga Group Italia sez. L'Aquila --- SOON: http://www.rebol.it/

 [31/66] from: joel:neely:fedex at: 16-Dec-2003 7:50


- REBOL: The message is the medium. - REBOL: Programming for "block" heads - REBOL: Life's too short to write long programs - REBOL: Fight carpal tunnel syndrome! - REBOL: Good things come in small packages - REBOL: Because Von Neumann was right! - Real Expressiveness Based On diaLects - Radical Economy Built Of Literals - REBOL: just DO %it - Fewer moving parts -> more parts move - REBOL: Spread the WORD! - REBOL: word up! - REBOL: the last WORD in programming - REBOL... I :it - REBOL... :on-the-network - foreach program your-to-do-list [:REBOL] - REBOL: because this bumpersticker is too shor

 [32/66] from: Jamey::Cribbs::oakwood::org at: 16-Dec-2003 9:28


Gabriele Santilli wrote:
>Hi Jason, > >On Monday, December 15, 2003, 6:02:50 PM, you wrote: > >JC> Yes but that is still also true for HTML, XSLT, Perl, Python, PHP, Java, C, >JC> etc.. > >How do you MOLD some PHP code and send it to another computer? ;-) >
I don't know how you do it in PHP, but in Python you just "eval" it. Jamey Confidentiality Notice: This email message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and/or privileged information. If you are not the intended recipient(s), you are hereby notified that any dissemination, unauthorized review, use, disclosure or distribution of this email and any materials contained in any attachments is prohibited. If you receive this message in error, or are not the intended recipient(s), please immediately notify the sender by email and destroy all copies of the original message, including attachments.

 [33/66] from: sf:sabufrancis at: 16-Dec-2003 21:10


My hat in the ring: REally BEautiful Language (The "BE" because, REBOL is meant to be pronounced "REBEL") Regards Sabu Francis

 [34/66] from: joel:neely:fedex at: 16-Dec-2003 10:01


Hi, Gabriele, Gabriele Santilli wrote:
> Hi Jason, > > On Monday, December 15, 2003, 6:02:50 PM, you wrote: > > JC> Yes but that is still also true for HTML, XSLT, Perl, Python, > JC> PHP, Java, C, > JC> etc.. > > How do you MOLD some PHP code and send it to another computer? ;-) >
I disclaim all knowledge re PHP, but here's a trivial Perl client to fetch and execute/evaluate source from a remote host. use LWP::Simple; eval get ("http://your-site-here"); The only point I was making in my earlier comment was that there are several languages that are highly platform-neutral. It's also true that many of them are "mobile" in the sense of being able to migrate run-ning/-nable code across the 'Net. I guess one has to decide whether a one-line summary for REBOL (or any other language) is to be: a) a claim of a unique strength of the language (in contrast to other languages of the claimant's in-depth knowledge), b) a bullet point naming something the language does well (whether or not other languages do so as well), c) a bumper-sticker slogan intended primarily for fun (as in my recent list of submissions), or d) a sufficiently intriguing statement to motivate others to look at the language. And, of course, submitting types (b), (c), or (d), and having them perceived as if of type (a) is the basis is the basis of many language holy wars! ;-) -jn- -- ---------------------------------------------------------------------- Joel Neely joelDOTneelyATfedexDOTcom 901-263-4446 Enron Accountingg in a Nutshell: 1c=$0.01=($0.10)**2=(10c)**2=100c=$1

 [35/66] from: maximo:meteorstudios at: 16-Dec-2003 11:48


> -----Original Message----- > From: Cribbs, Jamey [mailto:[Jamey--Cribbs--oakwood--org]]
<<quoted lines omitted: 15>>
> > > I don't know how you do it in PHP, but in Python you just "eval" it.
but you have no say WRT context?! In rebol, each WORD stores its context locally, so there is a HUGE gap in possibilities. in rebol, you can build a block with the same word in it three times, each word storing a different value. I do admit, though, that if you sent the code to another computer, the context IS stripped. also because of the fact that a block is universal there are MANY ways you can trick the code to be shorter. I am implementing advanced applications in python at work (multithreaded stuff) and just having to use many different types of series makes the whole thing tiresome. for example, not all python series types support the same function(method) set so you basically have to learn each one from scratch.... hence rebol is "learn once apply many" in that the coding mechanisms are applied everywhere very uniformally. building code, browsing through data and creating your own function generator ALL use the same constructs. THAT'S One of the main reasons I prefer rebol over the rest. newbies often have problems understanding rebol's logic in the begining, but then marvel at how little they have to learn again, once they get it. -Max

 [36/66] from: gedb01::yahoo at: 16-Dec-2003 16:59


Hi Joel, --- Joel Neely <[joel--neely--fedex--com]> wrote: >
> I disclaim all knowledge re PHP, but here's a > trivial Perl client
<<quoted lines omitted: 4>>
> I guess one has to decide whether a one-line summary > for REBOL (or any other language) is to be:
Looking at it again, the challange was "to describe [the language] in terms of the problem it fixes." [1] This is very different from a marketing slogan. For example, the one-liner for lisp is Lisp: Turing Machines are an awkward way to describe computation. This seems an awkward way to describe Lisp, but it probably does reflect the motivation of John McCarthy back in the 1960s. Rebol's creator has expressed the problem that Rebol is intended to fix quite clearly on the Rebol web site: REBOL is not a traditional computer language like C, BASIC, or Java. Instead, REBOL was designed to solve one of the fundamental problems in computing: the exchange and interpretation of information between distributed computer systems. The ultimate goal of REBOL is to provide a new architecture for how information is stored, exchanged, and processed between all devices connected over the Internet. Unlike other approaches that require tens of megabytes of code, layers upon layers of complexity that run on only a single platform, and specialized programming tools, REBOL is small, portable, and easy to manage. The difference is clear when you look at the example given. The code required to pass a string to another machine and have it execute is simple enough, but it isn't enough for the real world. The code as given presents a massive security risk. So you have to construct sandboxes and all the rest of it. Layers upon layers of complexity. For Rebol the only change you would make to reach production level code is to create a dialect to express the necessary functionality. This does not mean that Rebol is better than these languages. These other languages have 'eval' as a nice feature. On the other hand, the ability to send an expression for another machine to execute is central to Rebol's purpose. I think I may be taking this all too seriously. [1] http://www.paulgraham.com/fix.html [2] http://www.rebol.com/rebol-intro.html ________________________________________________________________________ BT Yahoo! Broadband - Save £80 when you order online today. Hurry! Offer ends 21st December 2003. The way the internet was meant to be. http://uk.rd.yahoo.com/evt=21064/*http://btyahoo.yahoo.co.uk

 [37/66] from: Steven:White:ci:bloomington:mn:us at: 16-Dec-2003 11:13


> Can we find a snappy one-liner?
All User-Serviceable Parts Inside (as opposed to the common sticker on many electronic appliances that says "No user-serviceable parts inside") When I first HEARD about REBOL and who was writing it, I wanted to try it because of its alleged simplicity. When I tried to USE it I found out that I couldn't understand it. Then after some head-beating I found it to be at least more "accessible" than C or PERL or shell scripts. The concept of "free" software is that if I get a program I am free to look under the hood to see how it works, and to modify it if I want to. In actual practice, if I get the source code for a program and find thousands of lines of un-commented C code, there is no way I am going to TOUCH that. If it were REBOL, I might. If I had enough good business ideas, that would be the name of my company, USPI Inc. (User Serviceable Parts Inside). Steven White City of Bloomington 1800 W Old Shakopee Rd Bloomington MN 55431-3096 USA 952-563-4882 (voice) 952-563-4672 (fax) [steven--white--ci--bloomington--mn--us]

 [38/66] from: maximo:meteorstudios at: 16-Dec-2003 12:20


> -----Original Message----- > From: Ged Byrne [mailto:[gedb01--yahoo--co--uk]]
<<quoted lines omitted: 18>>
> So you have to construct sandboxes and all the rest of > it. Layers upon layers of complexity.
but security isn't always an issue. In this case, rebol outdoes everybody, IMHO. For security, you can just encrypt the data before sending it, and even that is (rather) easy to integrate right in a protocol. I have implemented several distributed applications and its so easy in rebol. I'm not saying its more powerfull, just easier. remember that there is ios for distributed commercial apps development. -MAx

 [39/66] from: maximo:meteorstudios at: 16-Dec-2003 12:25


> -----Original Message----- > From: Ged Byrne [mailto:[gedb01--yahoo--co--uk]]
<<quoted lines omitted: 3>>
> Looking at it again, the challange was "to describe > [the language] in terms of the problem it fixes." [1]
in one line: cause you want lisp to be easy, flexible, fun and you want it to communicate -MAx

 [40/66] from: jason:cunliffe:verizon at: 16-Dec-2003 12:46


> - REBOL: The message is the medium.
excellent :-)

 [41/66] from: joel:neely:fedex at: 16-Dec-2003 12:05


Hi, Maxim, Maxim Olivier-Adlhoch wrote:
> ... In this case, rebol outdoes everybody, IMHO. > For security, you can just encrypt the data before sending it, > and even that is (rather) easy to integrate right in a protocol. >
That's not the only security issue. Encrypting the source as it moves over the wire doesn't protect one from bugs (or malicious intent) in the code itself once executed. -jn- -- ---------------------------------------------------------------------- Joel Neely joelDOTneelyATfedexDOTcom 901-263-4446 Enron Accountingg in a Nutshell: 1c=$0.01=($0.10)**2=(10c)**2=100c=$1

 [42/66] from: joel:neely:fedex at: 16-Dec-2003 12:11


Hi, Ged, Ged Byrne wrote:
>> >> use LWP::Simple;
<<quoted lines omitted: 4>>
> enough for the real world. > The code as given presents a massive security risk.
I completely agree. I was only trying to show that the classic REBOL example do read http://your-site-here isn't unique.
> So you have to construct sandboxes and all the rest of > it. Layers upon layers of complexity. >
Which is as non-trivial in REBOL as in other languages.
> ... On the other hand, the ability to send > an expression for another machine to execute is > central to Rebol's purpose. >
But the ability to store/send an expression for later evaluation (whether on the same machine or not!) is a part of MANY current languages.
> I think I may be taking this all too seriously. >
I think we all are! ;-) -jn- -- ---------------------------------------------------------------------- Joel Neely joelDOTneelyATfedexDOTcom 901-263-4446 Enron Accountingg in a Nutshell: 1c=$0.01=($0.10)**2=(10c)**2=100c=$1

 [43/66] from: greggirwin:mindspring at: 16-Dec-2003 13:03


Ged, Joel et al, OK, so after reading Ged's latest post: REBOL: Because code really is just data Now, the EVAL discussion interests me because I've been of the opinion that while many other languages support an EVAL function it is different than what REBOL does. Can you achieve the same thing in some cases; yes. In *all* cases? I don't know. Is it important that, fundamentally, you're creating (in most cases) a string that is then passed to the parser (recursively?) by calling EVAL. What is the real difference if we say "DO = EVAL" and "block! = string!"? Is it important to take one step back from DO and look at how LOAD compares with other mechanisms? For me, it's the end user experience of how easy it is to generate executable data with REBOL that's important. Thanks, all, for more thought-provoking comments. -- Gregg

 [44/66] from: pwoodward:cncdsl at: 16-Dec-2003 16:11


Hmm - I see this topic has generated a few messages back and forth. I haven't read all of them, those I have piqued my interest. REBOL is an interesting issue for me. I use it almost every day, and yet I've never used it to produce an external system; all the things I do in REBOL are to make my day-to-day as a SysAdmin, DBA, Web Developer, Java Coder, System Architect, etc. (I forget how many hats I get to wear) easier. I've used it to autogenerate Java code - to produce JavaBeans, and their related SQL persistence code. I've used to to power an opt-out mail list engine - so that our sales/mgmt can send out newsletters. I've used it to parse web pages - into an indexed format for storage in a database, leveraging Java based "web services" I use it routinely to "save to disk" various portions of web content (movie trailers in QuickTime usually - when a friend comes over, I don't want to have to wait for the whole thing to stream over again, and they usually don't give you the option to save it). Prototyping proof of concepts. I routinely sketch out how I might do something using REBOL; it's syntax is very similar to pseudo code, so it works. I find REBOL to be a great "glue language" - sort of a grease for the wheels of e-commerce. I've thought about various production systems implemented in REBOL but generally have found that managing the code-base needed is a bit troublesome. Other languages have either better tools or facilities for module management; In many ways it replaces Perl or Python for me (although Python and Perl, because they are slightly more widely adopted have some uses REBOL doesn't). For me, REBOL is another tool in my programmers toolchest. It makes solving certain tasks trivial, but it doesn't necessarilly make the other tools in my toolchest obsolete. Some tasks are best suited to using SQL and a relational Database, others work better with Java based solutions. Since I'm the only guy at my office who knows REBOL, it's not the lingua-franca of programming. Lots of people understand JSP and Servlets - so that's what our presentation layer is usually coded in - you can buy books about it, and there are lots of toolkits available to enhance it in various ways. Learning more about it, or finding someone who knows about it isn't too hard to do. With REBOL I don't have that luxury - but that's OK, because I use it mostly to make _my_ computing life easier. - Porter Woodward

 [45/66] from: SunandaDH:aol at: 16-Dec-2003 17:50


> Can we find a snappy one-liner?
Belatedly lobbing an answer in of my own... Nothing....Nothing is fixed in REBOL. Sunanda.

 [46/66] from: greggirwin:mindspring at: 16-Dec-2003 17:01


Hi Sunanda, Sac> Nothing....Nothing is fixed in REBOL. LOL! :) Brilliant! -- Gregg

 [47/66] from: brunobord:tele2 at: 17-Dec-2003 1:59


Joel Neely wrote:
>- REBOL: Life's too short to write long programs >
Nice pick ! Shall I steal this line from you to explain my co-workers why I am a Rebol ? -- Bruno Bord

 [48/66] from: james:mustard at: 24-Dec-2003 22:52


Gregg Irwin wrote:
>Hi Sunanda, > >Sac> Nothing....Nothing is fixed in REBOL. > >LOL! :) Brilliant! > >-- Gregg >
unfortunately that can also be read: ... it was broken from the start. and that is NOT an impression we want to convey :-( James.

 [49/66] from: carl:cybercraft at: 24-Dec-2003 22:52


On 17-Dec-03, Ged Byrne wrote:
> Looking at it again, the challange was "to describe > [the language] in terms of the problem it fixes." [1]
<<quoted lines omitted: 13>>
> exchange and interpretation of information between > distributed computer systems."
I was trying to get at that with... REBOL: XML can't parse itself. using a similar style to what's on the site. ie... Pascal: Algol doesn't have enough data types. -- Carl Read

 [50/66] from: gedb01:ya:hoo at: 17-Dec-2003 10:38


Hi Carl, --- Carl Read <[carl--cybercraft--co--nz]> wrote: >
> I was trying to get at that with... > > REBOL: XML can't parse itself. > > using a similar style to what's on the site. ie... > > Pascal: Algol doesn't have enough data types. >
Oh, now I get it. Excellent! ________________________________________________________________________ BT Yahoo! Broadband - Save £80 when you order online today. Hurry! Offer ends 21st December 2003. The way the internet was meant to be. http://uk.rd.yahoo.com/evt=21064/*http://btyahoo.yahoo.co.uk

 [51/66] from: joel:neely:fedex at: 17-Dec-2003 7:03


Hi, James, James Marsden wrote:
> Gregg Irwin wrote: >>Hi Sunanda,
<<quoted lines omitted: 3>>
> ... it was broken from the start. > and that is NOT an impression we want to convey :-(
Then let's run with that perspective: REBOL - It breaks the mold! -jn-

 [52/66] from: SunandaDH:aol at: 17-Dec-2003 8:21


James:
> > Nothing....Nothing is fixed in REBOL. > unfortunately that can also be read: > > ... it was broken from the start.
Okay, so how about: REBOL -- It ain't broke and it ain't fixed. Sunanda.

 [53/66] from: jason:cunliffe:verizon at: 17-Dec-2003 8:58


> > REBOL: XML can't parse itself.
Isn't that what XSLT does ? XSLT is like Rebol in some ways but much harder to read and not so much fun.. - Jason

 [54/66] from: jason:cunliffe:verizon at: 17-Dec-2003 9:19


> JC> What is essential is easy interoprability. > > What is essential is simplicity. Any new piece you have to add > adds complexity, and complexity will in the end turn out against > you.
Yes very good point. But there is a trade-off point where modularity aids and manifests simplicity. Go past that threshold and too much modularity, too many options, become too complex. 'Simple' includes leveraging existing know-how, familiar contructs, tools, docs and community. Simple includes not having to write the book first or explain it to anyone. Simple includes mail order $130 six-speed Huffy bicycle from Walmart tha is made in China, vs. goign to Siberia and inventing one. Though the latter may be much more fun and spritually rewarding.. it depends. Reading /watching the recent flutry of articles and docs about the Wright brothers amazing prpgress in a few shortyears is full of apt examples. For example, XML may be inelegant compared to Rebol native approach, but it has a growing attraction has it gains mass adn momentum. Therefore, using XML in a Rebol application might actually be 'simpler'. Is it simpler to use Apache when you know how, than to write, document, test and debug your own server? Is it simpler to develop multimedia intefaces in Rebol orwork work with tools like Flash which handle text, graphic, sound and interfactivity way better. Oldes' make-swf is perhaps the most significant Rebol dialect which tests the issue of interoperability vs. simplicity. It is a amazing work in progress, but still requires one to a) understand flash, b) know some actionscript c) know Rebol and d) know the make-swf dialect. Rebol strikes a very elegant balance I think. What it still lacks is a smart IDE/browser component to help one to move faster with syntax and dialects. Loaded dictionaries and context sensitive support. I imagine that is a very hard thing to write. But perhaps Rebol makes it easy.. - Jason

 [55/66] from: maximo:meteorstudios at: 17-Dec-2003 14:35


> Rebol strikes a very elegant balance I think. > What it still lacks is a smart IDE/browser component to help
<<quoted lines omitted: 4>>
> Rebol makes it > easy..
there are two initiatives in the works I know of, but none actually are available yet... they are very much work in progress. -RIDE -STEEL|FORGE yes it is a complex problem. actually the problem is that any coding tool must allow you to do the whole thing. if an ide goes half way in terms of the basic coding, then you likely won't have fun using it, if it restricts you. implenting an ide with no holes in rebol is extremely tough, because rebol IS so wide. The fact that rebol also has so little syntax (like no parens for functions) makes it even harder. What's more is that many constructs in rebol allow you to insert code which will be evaluated, even if at first glance such a concepts isn't outright obvious... The make word is a good example. you really can put any code in a MAKE block, not just value: data pairs. Trying to make an editor for that is extremely challenging. remember that we have to load projects, not just create new and restricted ones. I would not want to limit rebol to the way of thinking that C, for example, implies. -Max

 [56/66] from: james:mustard at: 24-Dec-2003 22:52


[SunandaDH--aol--com] wrote:

 [57/66] from: maximo:meteorstudios at: 17-Dec-2003 16:49


all along we had the answer in our faces.. ;-) rebol means "relative expression-based object language" ... so this translates into: REBOL: cause you don't want to define your code, you want to express it -MAx dont be fooled. Simple is hardest

 [58/66] from: jason:cunliffe:verizon at: 17-Dec-2003 17:07


Rebol - programming for dialecticians

 [59/66] from: joel:neely:fedex at: 17-Dec-2003 16:11


Hi, James, Were you just joking? (OBTW, REBOL isn't the only language that supports dialects...) James Marsden wrote:
> Dialecting in Rebol, more fun than Latin!
Damien Conway has actually written a Latin dialect for Perl! [begin excerpt] Lingua::Romana::Perligata -- Perl for the XXI-imum Century Damian Conway School of Computer Science and Software Engineering Monash University Clayton 3168, Australia Abstract This paper describes a Perl module -- Lingua::Romana::Perligata -- that makes it possible to write Perl programs in Latin. A plausible rationale for wanting to do such a thing is provided, along with a comprehensive overview of the syntax and semantics of Latinized Perl. The paper also explains the special source filtering and parsing techniques required to efficiently interpret a programming language in which the syntax is (largely) non-positional. ... The Sieve of Eratosthenes is one of oldest well-known algorithms. As the better part of Roman culture was ``borrowed'' from the Greeks, it is perhaps fitting that the first ever Perligata program should be as well: #! /usr/local/bin/perl -w use Lingua::Romana::Perligata; maximum inquementum tum biguttam egresso scribe. meo maximo vestibulo perlegamentum da. da duo tum maximum conscribementa meis listis. dum listis decapitamentum damentum nexto fac sic nextum tum novumversum scribe egresso. lista sic hoc recidementum nextum cis vannementa da listis. cis. The use Lingua::Romana::Perligata statement causes the remainder of the program to be translated into the following Perl: print STDOUT 'maximum:'; my $maxim = <STDIN>; my (@list) = (2..$maxim); while ($next = shift @list) { print STDOUT $next, "\n"; @list = grep {$_ % $next} @list; } Note in the very last Perligata statement (lista sic hoc...da listis) that the use of inflexion distinguishes the @list that is grep'ed (lista) from the @list that is assigned to (listis), even though each is at the ``wrong'' end of the statement, compared with the Perl version. [end excerpt] For those with a classical education (and a high tolerance for pain ;-) the full paper is available at http://www.csse.monash.edu.au/~damian/papers/HTML/Perligata.html It's a hilarious tour-de-force! -jn- -- ---------------------------------------------------------------------- Joel Neely joelDOTneelyATfedexDOTcom 901-263-4446 Enron Accountingg in a Nutshell: 1c=$0.01=($0.10)**2=(10c)**2=100c=$1

 [60/66] from: joel:neely:fedex at: 17-Dec-2003 16:36


REBOL - It's just an expression or REBOL - express yourself! -- ---------------------------------------------------------------------- Joel Neely joelDOTneelyATfedexDOTcom 901-263-4446 Enron Accountingg in a Nutshell: 1c=$0.01=($0.10)**2=(10c)**2=100c=$1

 [61/66] from: james:mustard at: 24-Dec-2003 22:52


Heehee, nice one Joel! That Perl excerpt is truly marvellous - I must pass it off to a linguist friend of mine - she'll love it :) James. Joel Neely wrote:

 [62/66] from: maximo:meteorstudios at: 17-Dec-2003 20:23


a twist on my previous statement... REBOL: others define code, rebol expresses it and a new one: REBOL: its quick and dirty... without the dirty --------------------------- DRIFTNG A LITTLE BIT... --------------------------- In this ongoing discussion, it has been confirmed that you can evaluate code "on-the-fly" in most modern languages, or have modules or extensions which allow it. But rebol, being an expression parser and evaluator, handles code in many ways like if it where any kind of mathematical expression. This means evaluating code on the fly is INTRINSIC to rebol... its not just a feature. no one marvels when they know that their language can calculate an expression with functions and variables: b = (x + abs(x) + 45) / 2 here each parenthesis will eventually receive a value once its internals have computed and will get a numerical value. in the above, execution is impossible without defining x, right? I mean, any computer programmer will react instantly and say: "of course!". Many rebolers have yet to realise that rebol actually handles all data in much the same manner, relatively speaking. Code being just another type of data to handle. Defining, evaluating, passing, and assigning values to/from words as it encounters them. warning: The following code and explanations is a little more advanced, and is an excellent primer for those of you who want to get in on the more "obscure" (advanced) functionalites of rebol! If you don't understand the following, you should look up each word in the help and try to understand it piece by piece. It might open up your understanding of all that jabbering, the more experienced rebolers have been doing. ;-) type this in the rebol console:
>> hello: do prints: func [arg][does compose [print (arg)]] "hello world" >> hello
hello world Each thing in the expression is evaluated one by one like a mathematical expression. here, the word PRINTS eventually got a value while rebol was evaluating the expression line, so we can then try:
>> bye: prints "bye bye" >> bye
bye bye bye and hello really are new functions, as proven here:
>> source hello
hello: func [][print "hello world"] This shows how you can create you own custom "statements", as defined in other languages. conclusion: ----------- Yes, many other languages support on-the-fly eval() of code, but to get that back right in the language without any additional effort, to be able to play with code like data, to assign contexts to words, store them, generate new functions using these contexts and all the manner of advanced modifiable code, IMHO rebol is the current (easy and fast to use) king of the hill... HTH! -MAx dont be fooled. Simple is hardest

 [63/66] from: g:santilli:tiscalinet:it at: 18-Dec-2003 10:55


Hi Jason, On Wednesday, December 17, 2003, 3:19:18 PM, you wrote: JC> Simple includes not having to write the book first or explain it to anyone. [...] Don't confuse "simple" with "easy"! And, of course, most times one is going to do what's easier, not what's simpler... but that doesn't mean we shouldn't prefer "simpler" when we can have it. :) Regards, Gabriele. -- Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer Amiga Group Italia sez. L'Aquila --- SOON: http://www.rebol.it/

 [64/66] from: jason:cunliffe:verizon at: 18-Dec-2003 10:06


> Don't confuse "simple" with "easy"! And, of course, most times one > is going to do what's easier, not what's simpler... but that > doesn't mean we shouldn't prefer "simpler" when we can have it. :)
Yes good catch. You are right of course.. I confess I was trolling just a little to provoke more lucid distinctions. This has been a surprisingly interesting thread. I subscribe to the Show-Control list. Notable for its pragmatism. Best simplest design is sought after and discussed avidly there, but that typically lead to deeper consideration of a project's context and conditions, not just the specific technical question originally being asked. In part that is becuase Show-Control applications can be dangerous and have to take human safety and operator behavior into account. The list is good reading - an often fascinating blend of hardware, software, tech, design and implementation. http://www.show-control.com/sclist.html A great example of simple and easy I came across recently is 'VLC', one of the excellent VideoLan streaming tools. Actually VLC is also server. Just select "Add Interface --> HTTP Remote" or use the command line equivalent. That's all you have to do to turn on the web server embedded in the client to enable remote control of video streaming :-) http://videolan.org great open free cross-platform toolkits -- could be interfaced beautifully with Rebol in many ways. enjoy - Jason

 [65/66] from: jason:cunliffe:verizon at: 18-Dec-2003 11:03


> "REBOL: others define code, rebol expresses it"
hmm... I like it Can you explain the difference between 'define' and 'express' please? - Jason

 [66/66] from: philippe:arsenne:club-internet at: 20-Dec-2003 11:55


Hi Gabriele Could you send this message to the list. I hope that you wil have the nicest chrismas. sincerly Philippe Arsenne -----Message d'origine----- De : [rebol-bounce--rebol--com] [mailto:[rebol-bounce--rebol--com]]De la part de Gabriele Santilli Envoyé : jeudi 18 décembre 2003 10:55 À : Jason Cunliffe Objet : [REBOL] Re: What does REBOL fix? Hi Jason, On Wednesday, December 17, 2003, 3:19:18 PM, you wrote: JC> Simple includes not having to write the book first or explain it to anyone. [...] Don't confuse "simple" with "easy"! And, of course, most times one is going to do what's easier, not what's simpler... but that doesn't mean we shouldn't prefer "simpler" when we can have it. :) Regards, Gabriele. -- Gabriele Santilli <[g--santilli--tiscalinet--it]> -- REBOL Programmer Amiga Group Italia sez. L'Aquila --- SOON: http://www.rebol.it/

Notes
  • Quoted lines have been omitted from some messages.
    View the message alone to see the lines that have been omitted