Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

REBOL the "Messaging Language" 113

FunkflY writes " From the Rebol Hompage"REBOL (pronounced "REB-ul"), the first in a new breed of Internet messaging languages, today revolutionized the exchange and interpretation of network-based information by allowing programs authored in REBOL/core 2.0 to run on more than 15 popular computing platforms without modification. As a messaging language, REBOL provides seamless network connectivity to the Internet protocols such as HTTP, FTP, SMTP, POP, NNTP, Finger, and others." " A new version came out recently-worth checking out.
This discussion has been archived. No new comments can be posted.

REBOL the "Messaging Language"

Comments Filter:
  • by Anonymous Coward
    An informal Slashdot Quiz we don't want to hear about ***

    1. How many posters worked with actual AREXX (not REXX crap but real *AREXX* on an *Amiga*)?
    2. How many posters think that Amigans should not be using Linux; that Linux is "too elite"?
    3. How many posters have CS Degrees?
    4. How many posters feel that only people with CS Degrees should have the right to make programs?
    5. How many posters missed the boat entirely?
    6. How many posters have their head up their ass?

    1. Only one, a mere pittance. Another sounded like they had some experience, but I can tell you, REXX and AREXX are two different beasts.

    2. Apparently too many. You folks seemed to have forgotten that there are ALOT of defectors from the Amiga camp that left because, for once, you could get a PC that didn't come with Winblows. I'm one of them, and I can say with certainty that if Linux had not offered what it did, I would have NEVER switched.

    For God's sake man, who the hell wants SEGMENTED 32-bit MEMORY? Multipliers that occur in only ONE specific regsiter, and additions in another? Only four primary CPU registers? 36 bit flat address space - now there's a standard that only Real Men Use(tm). Parity bits - hell, let's include some tools from the stone age as well. Oh, and there's my favorite, segmented MEMORY POINTERS from hell in MicroSquish C, despite the known assumption that C pointers are for a FLAT ADDRESS SPACE. (don't even try to double-guess that last one... you can't tell me that pointer arithmetic was meant for a segmented arch.)

    Who dropped the ball on that one? Forget that last question - it should be, "Who dropped acid at Intel while designing such a lame chip family as the x86?" I guess that's why people paid $1500 for a computer for years and years...must be all of that wonderful stuff that you get in the box.

    And people wondered why the Amiga hung around for so long...get a clue...because it was USABLE. Because it was PROGRAMMABLE. And because it didn't consist of a 8088, 64k memory, tape-drive-with-5 1/4"-floppy piece of crap in 1985. The Amiga 1000 (incidentally released in 1985), considered long obsolete, beat the crap out of PCs, Macs, etc. out of the BOX. Ever wonder why the Mac "got color" real fast? Why the PC soundcard market "magically appeared" overnight? Why Intel did everything in their power to kill the m68k line of chips? (answer to that last question: the 68060, the last chip in the family ever made before Mot pulled the plug, beats the crap out of a pentium at the same clock speed. Gee whiz, I guess having 16x 32-bit generic registers makes a difference...oops, that must be a RISC chip I'm talking about...naw, it couldn't be, after all, we know that RISC was a completely new concept...it must be a rumor that 68k chips had this feature A LONG TIME before RISC showed up)

    The one salvation of the x86 arch. is Linux.

    Win95 is plain stupid, with it's "API flavor of the month" approach and "wonderful Industry backing" (oops, I mean wholesale company buyouts, legal pandering, strong-arm OEM license tactics, astroturf campaigns, lame EULA agreements, big-brother-GUIDs, vendor lock-in, young-programmers-with-no-life-and-burnout, and quasi-sometimes-it-works memory protection)...I think I'll reach for a vomit bucket...

    3. Who knows? Who cares? Apparently you ALL have degrees, but if that's the case, then what the hell are you doing here, instead of making money before you loose your job at 40 because of the rampant age discrimination in the industry?

    4. Too many, but that's OK, we understand your need for job security. After all, programmers and analysts should be exempt from the kinds of problems you find in every other industry...they're so special, aren't they?

    5. Almost all. This is a MESSAGING language, i.e. it should replace AREXX for a reason. If you feel that messaging should only be done with shared memory, semaphores, high-speed switched networks, and lots of C code, then GO SOMEWHERE ELSE AND FORGET YOU READ ALL OF THIS. I don't have several lifetimes to live to write crappily-written C code that looks like my computer puked, just so that I can get program A to send commands to program B and have program B provide feedback to program A...while doing REAL WORK.

    6. It's too difficult to determine without pulling several heads out of several asses. That's OK, you can't see me this way as I sneak up on your job and take it.

    * * *

    A real disappointment, folks. If you can't see the value of a SCRIPTING language that allows you to simul-multi-fucking-taneously controll SEVERAL programs, and allow SEVERAL programs to interact that have completely different designs and uses, then I guess you don't have a use for shell scripts, either...or perl. Come to think of it, why bother learning anything new? We should just stick with the wonderful set of tools that we already have. I guess that's why x86 still sells strong, but can't even match the processing power of a Sony Playstation 2 (that's right folks, your average 400Mhz/Voodoo/128Mb RAM PC can't hold a candle to a $299 game console - tells you something about the words PCs SUCK WIND OUT OF THE BOX)

    This is just about the last straw. Slashdot used to be an interesting place to hear the news. Now it's just a clique of "3l33t3 P33C33 d00z with 4ttit00dz".

    Moral of this mindless rant:
    Before you piss on something, check out what you're pissing on. It might just be a live wire...

    Typical Programmer's Response: "Oh, it's a potential threat, let's bury our heads in the sand! Hey, what's that I feel up my ass, and why does the sand stink?"
  • by Anonymous Coward
    Every programmer is an end user of existing languages and
    code. C is very simple, I think. That's what makes it good.
    Simple is always better so long as simple allows flexibility and
    power, which it usually does much moreso than difficult.

    As for CS gurus, it's been my experience working with
    a number of programmers that programming is an art. CS is
    theory. Can you honestly tell me that 99% of all programming
    requires no more mathematics than jr. high school algegra, if
    that. The skills involved are more like those of writers and musicians
    - liberal arts majors and creative artists, not scientists.
    Programming is not a science, and I hope it never becomes

    You know what language most physical scientists and mathmaticians
    prefer to test their theories? Basic. Because it is quick and has
    enough math functionality and graphics to produce demos to
    prove these theories or illustrate them. These are the peoople
    who are *real*scientists, not pseudo scientists who get CS
    degrees so they can drive BMW's. (Not to imply that all CS
    grads are like that, though). Good scientists look for simplicity
    even in complexity, and good mathematicians often seek the
    simplest proofs.

    Programmers who hold end users in contempt are at best very
    mediocre programmers. Most become sysadmins because they
    really don't enjoy programming. They are good at promoting
    their own careers and throwing around buzz words and
    little else. Often such "CS gurus" will make things unnecessarily
    difficult or obtuse for their own job security, and that is really
    bad programming and design. Not to mention what it costs
    their employers.

    These are the kinds of people who don't stay at a shop
    long enough to finish what they started leaving a mess for
    others to fix while they play golf with the boss, blaming others
    for their mistakes, and taking credit for what other do that the
    boss likes.

    Rebol looks like a very interesting language. It can do a lot
    more than internet messaging. That it can do a lot more should
    be obvious to even a novice from looking at a small bit of
    code, but perhaps such insight is unavailable to "CS gurus"
    like yourself. It is a prettier language than perl (which is ugly as sin)
    or python (which is a god awful mess). Not as powerful,
    probably. But then, I imagine it can be used to script
    compiled c and c++ or anything else, and may be an easily
    exensible language using c. Something to check out.

    Believe me, this is nothing like VB or Cobol. There is no
    inherent conflict between *real* simplicity that seems to be
    the foundation of Rebol and sophisticated uses. While it
    doesn't look much like C, something tells me that for an
    interpreted language it may share some of C's flexibility and
    beauty which may not be apparent to CS people.

    I intend to check it out because it looks like FUN and also
    because it is a good way to allow non-programmers or novice
    programmers to communicate if they have Rebol installed
    at both ends - for example a Web server or page and
    a home computer connected to it. It's small and may be much better
    for that than what is now available. So there.

  • // A simple database example in Dylan
    let persons = #(
    ("Moe Howard", "CEO", "Three Stooges Ltd.", "moe@threestooges.com"),
    ("Larry Fine", "Manager", "Dept. of Knuckleheads", "larry@kheads.gov"),
    ("Curly Howard", "Mascot", "Wise Guys Club", "curly@wiseguys.org")

    let name = first;
    let company = third;
    let email = rcurry(element, 4);

    for (row in persons)
    format-out("%s of %s is at %s\n", row.name, row.company, row.email);
  • by Anonymous Coward
    I do not mean to poo-poo on someones new toy,
    but why should people use a "new language" just
    to do simple little tasks like downloading
    a webpage or sending mail? There are already
    powerful scripting tools out there. Tcl, Perl,
    and Python have been around for a lot longer
    and they can do all of this and more. Perhaps
    someone can clue me in about why this tool
    is any better than the existing ones.
  • by Anonymous Coward
    Look at the email examples. In one of them answers are sent to the From: address (instead of the Reply-To address if available), in another one the From: address is used to trust the sender ... talk about security holes
  • by Anonymous Coward
    Having the basic Internet protocols built into the core is a nice idea. But the language looks like candygrammar, with all the pain that entails. I don't see support for regex, either.

  • by Anonymous Coward on Saturday May 15, 1999 @12:59PM (#1890941)
    All the whining and crying about Rebol's logo and why it's nothing to even look at. At how Perl pounds the daylights out of it. Crimeny-sakes!

    I emailed Rebol last fall and asked if it would be available for the PalmPilot. Within a day they emailed me and said that they would investigate. It's now atleast listed as pending on the site. Did anyone else notice this? You might be geeks but you aren't going to get a functional Perl dist on the PalmPilot. (And CPAN won't help in this arena.) I think it's a niche language for niche applications that looks promising for communications between portable devices and 'regular' systems.

    Rebol is something new (as compared to C,C++,Perl). Something cool to learn. Maybe even useful. Why's this group so condescending to 'new' technology? I even saw a gripe about it being Freeware. Geez-oh-whiz! Only here.

    Did any of the nay-sayers, at the dawn of Perl say, "Ohhh, that's junk. What do we need that for? I don't see the application for it."?
  • I agree, this definitely looks useful. When I want to do something simple internet-related, writing a REBOL script is a lot better than writing a C program or Perl script...
  • But if you had the source, you could do it yourself, or find someone to do it a hell
    of a lot faster than that, now couldn't you?

    Has anyone bothered to write & ask if they would consider opening the source (and if they won't open it, why wouldn't they)? It looks to me like it would be trivial to write a clone of their software (especially if it's just sticking text headers in front of data).

  • I've used it a bit in the past and I must say that it really is nothing like C. To me it feels very LISP like. The heavy use of []. Blocks (which are often just lists of things) being used to store most data, and the everything-is-data-until-executed way of working. Also, Rebol is a hell of a lot more dynamic and lose than C. Any 'word' (or function) can be redefined anywhere, anytime.

    Try it out, it's fun. But you won't get very far using a C like programming mentality.

    Open Your Mind (tm) :-)

  • As for the "built-in networking" - I wouldn't make such a fuss out of it. It's true that other languages (perl, for example), don't come with these built-in, but with the excellent distributed module repository - CPAN - it's a non-issue. Fetching a WWW page is as simple as

    perl -MLWP::Simple -e 'print get($ARGV[0])' http://www.slashdot.org/

    SIMPLE?! Tell that to Joe User!
    1. You have to KNOW about CPAN
    2. You have to know where NEAREST/ANY CPAN archive is
    3. You have to FIND the right module.
    4. You have to INSTALL it on your machine

    Yeah, simple indeed!
    Some of the people here need to go out (of the ivory tower) more....

    Just my 2c
  • Ugh.

    That's not a question of being a die-hard or not. The real question is why the f*&% people still invent new syntax. The beauty of Scheme (or Common Lisp, for that matter) is that you learn one basic syntax, and you can construct most any domain-specific syntax in terms of it. Yes you can have infix math in Lisp. Do your homework or something.

    All this glitzy networking stuff could be a nice Scheme or Lisp extension, along with the syntax. But noooo, we have to invent a new damn language to have the networking. We'll have Perl for text processing, Lisp for heavy AI, Rebol for networking and Python for, uh, "rapid prototyping" (slow prototyping, anyone?).

    1. I needed to vent.
    2. I think the computing field needs more people that know what they are doing, and "easy" languages only help impostors and give people unfounded hopes (like, hey, I'm a bad-ass algorithm designer. I know Basic).
    3. I don't take parentophobes seriously. If you have such problems distinguishing syntax from semantics, than you probably don't have a good grasp of the distinction between content and representation.

    There, I feel better now.
  • by William Tanksley ( 1752 ) on Saturday May 15, 1999 @06:15AM (#1890947)
    It's not very C-like; if I had to pick a language it _is_ like, it'd be Forth, but with the ability to have syntax. Not at all unpleasant.

    Anyhow, one interesting result of the Forth-like nature is that there are a huge number of datatypes which are not possible in other languages; for example, URLs are actually formal datatypes, not just another string (a malformed URL is a compile-time error).

    They've obviously learned from Perl and Python otherwise; it's a nicely dynamic language which seems to be error-tolerant, and has quick, easy syntax for most needs.

    I'm reasonably happy with it. It doesn't look as _nice_ as Python, but at least its braces and brackets have a purpose.

    I suppose I'll have to build a Lojbanic version. Now that would be interesting. A speakable computer language.
  • look at replacetext.r [rebol.com]. And as for candygrammar look at alien.r [rebol.com] and the stuff on dialects in the nutshell [rebol.com].
    That all being said, I'm not throwing out GCC and scrapping Perl and Java. It does look like a great quicky
    and one-shot scripter especially for the network.
    The main advantage is a 119k cross-platform distribution with built-in
    help and documentation and no libraries to track down and install. Beat that with [insert viable language of your choice]!
    This is the kinda thing I can give my pointy-haired boss's secretary so she can write a clue filter on his email and pull down his football pool scores.
  • thats really funny, cos I was feeling that way (secretly) about php.
  • Heh.

    I'm looking for a good language to deal with a reasonably large(nearing 10K lines) CSV formatted database. It's the log database for the DoxPrint system that's running at my college. DoxPrint is a SambaNetware gateway that I'm releasing under the GPL By The Time You Read This(TM). Presently, the only way to get efficient information out of it is using contortions of grep, sort, uniq, and wc, or loading the database in Excel and having fun.

    Should I try Rebol? Or what? I'd like the next version of DoxPrint to support Web Log Analysis, but I'm unsure which language I should cram to achieve that goal. Suggestions?

    Yours Truly

    Dan Kaminsky
    DoxPara Research

    Once you pull the pin, Mr. Grenade is no longer your friend.
  • It's not "whitespace-sensitive", it just cares about consistent indentation. Apart from that, you can play with whitespace all you want.

    The only place I've seen Python code get munged this way is on Slashdot, since you can't PRE, and I was able to whip up a Python script to get around that problem very easily.

    Of course, if you need an excuse to limit your toolbox, calling it "whitespace-sensitive" is as good as any.
  • had a look at the site and i liked the ability to query http for instance. i know u can do this using other languages like perl but perl doesn't live on my palm pilot (or run well on my nt box) and that was if i could care to programme in it (sorry perl progs).

    having a light scripting language across platforms would be very useful for querying websites, extracting useful information programatically and getting it to run off my networked palm...(i know the palm port is pending)

    but i agree that as far as a prototyping/quick tool that allows u to use basic web protocols , rebol may just be the tool for the job.
  • by AMK ( 3114 ) on Saturday May 15, 1999 @01:10PM (#1890953) Homepage
    Back in October when REBOL first came out, there was an interesting, and surprisingly even-handed, thread about it in comp.lang.python. The consensus was that REBOL is basically Scheme -- Scheme dressed up in an infix format to avoid triggering parenthephobia.

    Personally, I can't imagine why anyone in 1999 is bothering to release a new language without making the source code available. Haven't we learned better by now?

  • by ink ( 4325 ) on Sunday May 16, 1999 @02:42AM (#1890954) Homepage
    I am beginning to hate Linux USERS, because they just don't seem to know any better. REBOL looks great, and has promise. "Awww, but it may not be GPL, therefore it sucks." "Ahhh, it ain't Perl" "Why do we need another language" Shit like this really scares me when I think about the intelligence level of a lot of Linux users. I must say, Windows may suck, but Windows users don't. I know a lot of Windows users that embrace new development technologies, while Slashdot is full of whinning programmers who feel that if you can't do it in C/Perl, you shouldn't be a programmer.

    Linux is part of the Free Software movement. If you don't like that then you should present clean, concise reasoning why we should never discuss it. You are making HUGE generalizations about Linux and Windows users and you ought to learn how to present a rational argument instead of this silly banter.

    Why shouldn't we critique the license under which new software is released? Why should we accept everything developed for Linux with beggar's hands? We shouldn't and we don't (surprise). If that offends you, I'm not sorry and I won't apologize for "whinning programmer" bretheren for it is you who is doing the whinning here.

    As for the issues; UNIX is based on small utilities which do one thing well. None of the examples on their website showed anything revolutionary or even interesting when compared to BASH. What's the difference between doing

    send luke@rebol.com "Hello World!"
    echo "Hello World" | mail luke@rebol.com
    It is any surprise that were not very impressed?

    Perl is a schitzophrenic language. It can look good, it can look bad. It can be object-oriented, it can be iterative, it can be threaded, it can be modularized. It can embed code from other languages, it can communicate with the native OS using native constructs, it can be graphical, it can be ttyable. It is what you want it to be, and yes, it should be compared to REBOL because they are trying to solve the same problems.

    But I suppose you'd rather whine about Linux users with your time. What a joke. And as for the Amiga user: get over it. I used to be an Amiga user and I don't expect the Linux community to "care about my feelings" or other such bullshit. If you want to compare something with AREXX then do it. If you want to spout how 31337 you are because you're the "only" one to ever use it, you have no business raking Linux users over the coals for doing the same thing with Perl and C. Shut up and present a post with content.

    The wheel is turning but the hamster is dead.

  • by myconid ( 5642 )
    This seems more like a hybred between php and c than anything else. It has a more c'ish language, but it also is a lot cleaner, like php.. I don't see where this "messaging" language would come in handy.. it just seems like a language that can do a multitude of tasks.. create webpages, and do file stuff.. A beginners language to C? hmm..

    Stan "Myconid" Brinkerhoff
  • by Woodie ( 8139 ) on Saturday May 15, 1999 @07:03AM (#1890957) Homepage
    Rebols really pretty cool.

    Sure, I know "it's another scripting language" - but consider that it has support for currency built into it. I don't really see that any where in Perl. Oh yeah, and date arithmetic too.

    It's really nothing like C or C++, so I'd suggest that all the nay-sayers who've been saying that it is, take a look at it for real. Considering that it's a 150Kb download it really shouldn't take that long... Oh yeah there's another difference from most "modern" scripting environments, it's small. Yeah - you get all that good stuff in a very tiny package.

    So, far, after extensive experience with NNTP and HTTP via Perl, I would have to say that Rebol is much much simpler to use, and leverage for a person who just wants to get stuff done.

    An example from their documentation:

    ; A simple database
    persons: [
    "Moe Howard" CEO "Three Stooges Ltd." moe@threestooges.com
    "Larry Fine" Manager "Dept. of Knuckleheads" larry@kheads.gov
    "Curly Howard" Mascot "Wise Guys Club" curly@wiseguys.org
    ; The fields of the database as words:
    facts: [name title company email]

    ; The format used to print the info:
    text: [name "of" company "is at" email]

    ; The loop that prints the database:
    use facts [forskip persons 4 [
    set facts persons
    print text

    Would generate the following:
    Moe Howard of Three Stooges Ltd. is at moe@stooges.com
    ... etc.

    - Woodie
  • Perl on palm pilot? How small can you get perl these days? One of the great things with rebol is that it's very small.
  • i have a ticket sitting in my queue that this language would be absolutely perfect for, but we are all IMAP here. no imap, no go. yawn. utterly useless to me.
  • Standard protection:
    > You may not reverse engineer, decompile, or disassemble the Software.

    Think of it as a beta test. My guess is they'll sell some kind of rebol-powered gui mail product.
  • And it breaks if the indentation isn't consistent. That makes it sensitive.
  • I find it suitably ironic that the de-formatting that happened to that example would cause it not to run. I'll take a language that isn't whitespace-sensitive, thanks.
  • huh? rebol threatens some status quo? it looks like just another weird-ish smart language that has some good ideas but is too different for difference's sake to actually get mindshare. I could see myself learning it for fun on a lost afteroon, but I really don't think I'll ever need it for anything.
  • fwiw, i've put the above on a webpage [glug.org].
  • ok you hacks, now that there's so much sand in the box, build your castle and let it be judged.

    slashdot moderators should hold a contest w/ the following rules:

    • submissions by end of 1-Aug-1999.
    • contestant must post a URL to a BLAH.tar.gz file
    • this file implements a REBOL interpreter/translator/compiler (your choice) in your favorite other language
    • in the interim, REBOL programmers (any that exist) can post programs to add to the Judgement Suite
    • judging is as follows:

      • the submitted entry must run all of the programs in the Judgement Suite
      • one point awarded for each program in the Suite that behaves "reasonably close" to that of the REBOL reference program
      • core dumps disqualify the contestant immediately
      • fewer lines of 80-column-max code is better
      • faster execution is better
      • (many) bonus points for synthesis of native language and REBOL (a la kawa [gnu.org])
    • prize is three-months bragging rights on slashdot but STFU afterwards, please (until the next programming contest)
    • REBOL employees are disqualified
    • submitted entry must have open-source license

    my guess is that there will be people interested in this sort of friendly competition.

  • Yes, but then why not port AppleScript instead?

    tell application 'Netscape' to open 'http://www.slashdot.org'
  • I don't know much about Tcl, but there is a version of Scheme for the PalmPilot. (Well, okay, Lisp. Well, alright, a Lisp-like language, anyways...) It's called LispMe. Y'all can look the URL up for yourselves.


    I speak for PCDocs
  • netwiz [mailto] opined:

    I dunno. I saw Rexx on OS/2, it's native platform (next to mainframe), and it beat the hell out of DOS batch files.

    I once tried to maintain a database-backed website whose glue was in Rexx [ibm.com]. Yes, it blew the doors off DOS batch files. Quite a complete little language with some nice features. Unfortunately, I had the same allergic reaction to it that I always have when I try to read FORTRAN. Its design was very much rooted in the IBM mainframe culture, and it gave me the heebie-jeebies. I'm not being fascitious; something about its worldview bothered me in a very visceral way.

    I'd be interested to hear what people who've worked in mainframe culture think about Rexx. I'm very much a *nix person, and just don't understand that point of view. How did it feel to use something like that on the desktop? What's your reaction to today's unix (or windows) dominated environment (and people like me)?

    REBOL at least seems to have lost those awful capital letters, despite its retro 70s-language name. They need a retro-chiq logo [rebol.com] to go with the name, instead of copying wired [hotbot.com]

  • Gee, that's exactly what I meant :-) Sorry you mis-understood me. I don't have anything against unreadable languages at all, but I do against computer-pro "imposters."
  • by Wag the Dog ( 12835 ) on Saturday May 15, 1999 @01:56PM (#1890970)
    I don't understand the people who have commented so far and their view that REBOL is a "good" language simply because it's "easier" than other languages. I think this is a common misconception that is evident in multiple areas of computer science -- that something is "good" because it's easy for the lay-person to pick it up and understand it.

    While this may be true for application programs, which are designed for end users, other areas of computers should not be made "simple" for end users. Take two examples, both from our "favorite" company:

    1) Visual Basic - this was an attempt to make programming a graphical system "easy" for lay people and those just getting "started" in programming. The result is horrendous. It may be easy to throw a few things together and come up with a "prototype" program but I'd be hard to convince that VisualBasic is "the" programming language to use for large complex projects.

    2) WindowsNT - Well, this is pretty self explainatory. This server operating system was designed with a "user-friendly" interface to make it easier for "administrators" to configure and maintain the system. What a joke. It's plain stupid to believe that anyone can make system administration "easy." The only way it's easy is if you have an experienced administrator behind the wheel who knows what they are doing. Then, you can have a well oiled operation that does not require any unforseen problems. However, I would strongly disagree with anyone that says you can take an inexperienced person and have them effectively administer a system just because it has a "user-friendly" interface.

    Now, what does this have to do with REBOL? Well, REBOL may be a great language. But whether it makes it "easy" for beginners or not does not influence my decision to use the language at all. In fact, I would hope that end users do not try to "program" in it simply because it's "easy." We would then end up with programs that "sort of" work "sometimes."

    If someone wants to get into the computer field, let them go to school and take some classes. It's important to learn the underlying concepts before going off and writing programs for production systems. Failure to do so usually results in more work for true CS gurus who have to fix the resulting problems.

  • Looks like it took features from logo, scheme, and tcl. From what I can see, the result is fairly dissimilar to anything most users might be used to. Some specific simple messaging related might be simple to do, but more complex tasks seem no simpler than in other scripting languages.

    I have trouble seeing REBOL go anywhere, though. It's not open source, making adoption that way rather difficult. And it's up against a lot of competition.

    On Windows, people use VBScript and Internet COM components with it.

    In the open source world, there are Perl, Python, Tcl/Tk, LUA, GUILE, and a lot of others. Perl in particular has good support for most Internet protocols. For less common languages with some history and interesting features, there are Icon and Logo.

    It is nice that their interpreter is small (something they share with Logo and Lua), but that alone doesn't seem sufficient to buy their stuff. And Tcl started off small, too.

    To me, the frontiers of scripting languages are in areas like COM/CORBA integration, automatic generation of C/C++/Java interfaces, and entirely new computational paradigms, not variations on an old theme.

  • Is there any scripting solution that does not beat the hell out of DOS batch files? :-)

    Both REXX on OS/2 and ARexx are nice scripting languages, but are very different beasts compared to REBOL, as far as I can see by looking at the guides on the REBOL web site.

    I think the basic concept of REBOL is neat, but it seems to still have a long way to go before being a replacement for Python or Perl in general.

    Since REBOL seems to be available for a number of platforms, it should not be necessary for you to buy a new Amiga to get it...
  • Basically, it's not ready for use yet.

    It needs to be capable of multiple users. I also need to be able to restrict access to certain protocols and commands.

    Until then, my users won't see it on the system.

    I played with it on my workstation though... it's neat. But I can do the same in Perl... over the years I've simplified many of the module calls like rebol.

    Hell, I'm sure we can write a rebol code parser in perl.
  • I like the fact that it runs on many platforms, and that the executable is small.

    So I can fit the Linux, winNT and win98 executables all one one floppy, and my scripts, too, so I can run them on any machine I need to (those are all the OS's we use at work) all from the same floppy, with no istallation of the lanquage on the local computer needed? (it stays on the floppy with the scripts)

    I think that's cool. usefull, at least.

    But I really don't want to learn a new language.. I'm still learning Perl (does anyone ever STOP learning perl?) and Perl is already on the Linux machines.. so:

    Is there a Perl for Win98/NT that will fit on a floppy?

    My activestate 514 installation on win98 is a total of 15 MB, the bin folder 1.4 MB.

    Anyone know the minimum I need? That would be cool to have a Mostly complete Perl in my pocket on a floppy. It would make things easier when I work on Win32 machines...

  • I don't understand the people who have commented so far and their view that REBOL is a "good" language simply because it's "easier" than other languages. I think this is a common misconception that is evident in multiple areas of computer science -- that something is "good" because it's easy for the lay-person to pick it up and understand it.

    Disclaimers first: I don't use VB, I hate NT, I've never looked at REBOL. That said, I disagree about as strongly as it's possible to disagree.

    The reason I use programming languages which are easier to read and write - for the lay-person, or for the technical professional - is because it's faster. If I felt like it, I could probably sit down and write a CGI script using gcc that would talk to a MySQL server quite nicely. But why? I can write a PHP app to do exactly the same thing in a matter of minutes. It might be fun to try that as an exercise sometime, but I have to make my living this way, and I'd prefer not to have to re-invent the wheel every time I do.

    Sorry. The reason people invented computers in the first place was because they wanted to do math problems that were too much of a pain in the ass to do otherwise. Much of the history of the advance of computer technology can be described in terms of people who were willing to expend a hell of a lot of effort so that they (or others) could get to be lazy somewhere down the line.

    Anyway - I get the feeling the diehards are just going to hate me for this. So if you disagree with me, fine, go write your own database from the ground up in assembly code. I'm going to use whatever tools are available to me, and then I'm gonna play some Quake.

  • Yeah - I agree that the syntax in REBOL (given the tiny example that I looked at) is odd enough that I probably wouldn't want to spend the time learning it. And, come to think of it, I think that we need more people who have the theory down pat before they start calling themselves "developers."

    My beef was that original rant came sounded to me like a rant against readable languages, rather than pro-"knowing what you're doing." Besides which, I'm really hyped on caffiene right now, and it looked like a good target for my extra energy.
  • I'd like to address you directly because your assumptions about me are completely wrong. Firstly, computer science is not just a career, it is a _science_ just like the name implies. I agree that computer science and programming are two different things. Anyone can program, but not everyone can be a computer scientist. The latter requires training, experience and the right kind of person. I would say that computer science is a much more academic endeavor than simply programming.

    As for your assumption that I'm just interested in using whatever is "trendy" you are once again wrong. As a computer science teacher at a Swedish University I tend to use a lot of languages that are not trendy at all, such as Lisp, prolog, etc. I have nothing against the introduction of a new language, and as I said in my original post, I have not evaluated Rebol so I can not say if it is a "good" language or not. What I was addressing in my initial post was that just because the language appeared simpler did not mean that it was better than what is currently available. The trend that I have been seeing recently on the Internet is that people that have no experience at all with system design, or even programming for that matter, are designing "web applications." This includes everything from simple scripts to attempts at full blown e-commerce sites. I'm all for creating a new language than can help with the these types of applications, but I do NOT think that it is a substitute for the type of experience that is necessary to deal with these situations efficiently.

    As for my analogies, I still think they are valid if taken in context. As I said above, the current trend is for non-programmers to attempt to develop Internet applications. So, like I said above, I don't want a non-pilot flying my plane, just like I don't want some graphic designer trying to secure my data on my favorite e-commerce site.
  • No not really, I've seen enough projects where you can take a mediocre programmer and still produce excellent code. As long as you give them a well written design document with well defined API's then you really can't go wrong. I'm not saying that there is no difference between good programmers and bad programmers though. I'd take a good programmer any day of the week if I had to choose. A good programmer will be more involved in the entire design process and is likely to produce results more quickly. In addition, a good programmer will require less "hand-holding" to get the job done.

    I've seen enough code from students to state with a clear conscience that yes, just about anyone can program. I'm not saying that they will all come up with the most optimal solution on their own, but if you specifically tell them to "do it this way" and then leave them alone, then 99% of the time they can do it. So I still stick to my original thesis that there is a lot more to being a computer scientist that programming.
  • Progamming languages ARE easy to learn/use/figure out if you've had several years training doing it. That is why people go to school for years to become computer scientists. If I'm going to have to start using a new programming language, I want it to be better, not just easier to use/learn/figure out. And just because it makes simple tasks easier, what does it do for more complicated tasks? I haven't fully evaluated this language yet, but just because it looks easy at first glance, doesn't mean that it really is easier in the long run.

    Here is something to think about, does the medical field make it easier for non-doctors to start practicing medicine without a degree? Or why don't they make plane cockpits simpler so that it would be easier to use/learn/figure out for a non-pilot?
  • > emailed Rebol last fall and asked if it would be > available for the PalmPilot. Within a day they
    > emailed me and said that they
    > would investigate. It's now atleast
    > listed as pending on the site
    Oh, they're investigating. Good.
    But if you had the source, you could do
    it yourself, or find someone to do it a hell
    of a lot faster than that, now couldn't you?

    - godel
  • Regardless even of the language's current 'technical merits or pitfalls' its long-term development is doomed to be constrained to its owner's conception of how the language should be designed, so long as it is owned by an individual.
    Perl's success comes from designing directly based on the needs of the community, and even owes its existence directly to solving a particular need. Its openness leads even to multiple options of how to interface guts (reasonably well-documents) to arbitrary C, meaning hordes and hordes of useful, free, open modules. Which implement the same sort of thing as REBOL's touted web-fetch-in-one-line and server-in-seven-lines examples.
    So in short, I don't happen to see REBOL as solving any of my problems any more effeciently than C and/or Perl and/or Scheme and/or any other existing language. And considering there is no source available to enable understanding and potentially modifying every detail of the language from the ground up, I find little reason for optimism concerning the language's usefulness in the future.
  • by Camelot ( 17116 ) on Saturday May 15, 1999 @09:02AM (#1890982)
    I think the biggest advantage - and pitfall - of REBOL is that it is different. All the new languages we have seen in the recent years are very much alike (C-like, in fact), switching from one language to another isn't too difficult. REBOL, however, seems likes a different beast - and that's why we, at the very least, give it some thought. The very fact that it's different also means that it will never be very widely adopted.. Remember Java ? There are two things that have attributed to its success for the most part:
    1. Its syntax is familiar to millions of C and C++ programmers out there, so writing in Java is not a big deal
    2. It's hyped and backed by a computer industry heavyweight (Sun)
    REBOL lacks both of these.

    As for the "built-in networking" - I wouldn't make such a fuss out of it. It's true that other languages (perl, for example), don't come with these built-in, but with the excellent distributed module repository - CPAN - it's a non-issue. Fetching a WWW page is as simple as

    perl -MLWP::Simple -e 'print get($ARGV[0])' http://www.slashdot.org/

    Getting stuff done ? I haven't yet met a language that can beat perl when it comes to minimizing development time, as the mission of REBOL seems to be different (as it says, a Messaging Language), I doubt it can do that either.

    REBOL for Internet Applications instead of Java.. hmm.. maybe ;)

  • by DGolden ( 17848 ) on Saturday May 15, 1999 @10:13AM (#1890983) Homepage Journal
    Well, Carl Sassenrath developed the "classic" AmigaOS - which was a 32-bit, preemptive multitasking, message-passing OS, running on 68k series chips (N.B. even the 68000, though it had a 16-bit data bus, had 32-bit registers (16 of 'em, not 4...), so the OS was always written (well, 1.3 and above) to be 32-bit) -but it lacked true memory protection (it came fairly close with pervasive semaphore locking in software, and a few other tricks. My amiga without true memory protection was always more stable than W95's so-called memory protection...) - CPUs with MMUs wre prohibitively expensive at design time of the original amiga.

    The Amiga OS had lots of good features, though, some of which linux is only catching up to now. A lot of its more esoteric and underused functions were actually quite cool, for the time. e.g. The Envoy networking software, in conjunction with ARexx, had "gateways" that could be used for message passing, scripting, etc, between clusters of Amigas - basically anything that a local arexx program could do, could also be sent through the gateways to other amigas. I also liked the dynamically resizing ramdisk - it was always handy. The support for multiple resolutions and colour depths on different screens simultaneously was also very useful. This was possible due to the custom hardware, though, which really made the amiga what is was.

    It's also really easy to program for in C or macro assembler, and its system include files work very well, and were very well written (on average) - I liked taglists for function parameters, exec lists were really useful, etc. etc.

    A lot of Linux people are ex-amiga people. Rasterman springs to mind. Imlib's kinda like datatypes, and enlightenment on X obviously borrows from the amiga workbench on intuition.

    Amiga OS 5.0 is a different kettle of fish. It's built upon QNX, which is a very good RTOS. It has relatively little to do with Amiga OSes 0 to 3, other than the name, and the fact that some of the original amiga people are designing it "in the spirit of the original amiga" - whatever that's supposed to mean.

    Rebol is a pretty easy language to learn, and very easy to read. However, I'd expect the Amiga NG people to include several scriptiing languages- they'll probably include the GNU tools, for a start, at least in the developer release of the OS.

  • uhm... arent you answering your own question? or was it multiple choice? I choose 2, financial backing.
  • >There are hundred/thousands of languages, and the
    >last thing we need is to learn a language with
    >each application, just because it was hyped on
    >slashdot :-(

    Then again, should we ignore new languages just
    because they're new? Many said the same things when C, Perl, and Java all first came out.

    But I agree that PERL is perfect for this job
    (Practical Extraction and Reporting Language eh?)

  • If they wanted it pronounced that way, they should have spelled it differently, and come up with an acronym to suit.

    The history of programming languages has too many *BOL languages pronounced -ball for anyone to complain about pronouncing REBOL 'reeball'. (E.g. COBOL, SNOBOL, SPITBOL, ...) Besides, it's "reeball" (or "reeboll") according to English pronunciation rules, such as they are.

  • Use C if you want speed. The csv 'parsing'
    is trivial.

    Perl will probably be fast enough too (especially if you have to do lots of string processing with the results - it will be easier to write), 10K lines of data isn't _that_ much.

    __// `Thinking is an exercise to which all too few brains
  • ARexx lets you mix and match separate applications.

    You know, like this Corba stuff? Like that, except you just wrote simple scripts, no idl, no big fat orb, no huge stubs. Just a simple script, which ran on a single (threaded) server and could talk to several 'enabled' applications simulataneously.

    It is simple, effective. Non-programmers can learn enough to enable THEIR applications to do what THEY want them to - without having to become middleware demons! Like what tcl is supposed to do, but without having to embed the interpreter in every damn application.

    ["windoze" lusers are used to fully integrated ide's, this whole idea is a bit mindblowing. Unix hacks think bourne shell and perl is how to integrate disparate applications ... or Corba ... sigh.]

    I think this is what Rebol is trying to do as well, but perhaps slightly differently. Allowing USERS to write distributed networked applications. Yes USERS, not DEVELOPERS. Wouldn't that be novel? Users being able to write their own meta-applications composed of otherwise disparate and incompatible software. At a higher level of abstraction than, say, perl (which isn't far off 'c with strings').

    Perhaps it needs an ipc mechanism (apart from the network protocols and to support application messaging), and skeletons for application integration (so it can become an application messaging system, rather than just networking), and probably freely available source to fit in with the gnu/linux mould (and for all you OSS zealots to love it) ... but the author is one hell of a sharp guy, and i dont think he'd have spent 2 years developing a 'toy'.

    (Amiga's exec, as mentioned in his bio, was doing rock solid, very fast, 32-bit micro-kernel multiprocessing on a floppy-powerd "microcomputer" nearly 15 years ago!)

    __// `Thinking is an exercise to which all too few brains
  • Nice observations.

    We should all start hyping it as the Next Big Thing, just to inflate the price.

  • # A simple database
    persons = (
    ("Moe Howard", "CEO", "Three Stooges Ltd.", "moe@threestooges.com"),
    ("Larry Fine", "Manager", "Dept. of Knuckleheads", "larry@kheads.gov"),
    ("Curly Howard", "Mascot", "Wise Guys Club", "curly@wiseguys.org")

    # The fields of the database as words:
    facts = ("name", "title", "company", "email")

    # The format used to print the info:
    text = "%(name)s of %(company)s is at %(email)s"

    # Emulate Rebol "set" feature
    def set(attr, val): globals()[attr] = val

    # The loop that prints the database:
    for person in persons:
    map(set, facts, person)
    print text % globals()

    P.S. Hey, Rob, how about allowing (pre) or (code) tags, eh?
  • >I find it suitably ironic that the de-formatting that happened to that example would cause it not
    >to run. I'll take a language that isn't whitespace-sensitive, thanks.

    There's always a wise guy. Here:

    for person in persons: \
    map(set, facts, person);\
    print text % globals()

    Happy now?
  • A new language is like a new musical instrument or paint brush. It may make it slightly easier to express certain ideas and expressions, but it boils down to one simple fact...

    The idea matters more than the expression.

    The great philosophers would still great even if they spoke another language. As long as a language lets your ideas be expressed in some way, that's all that matters.
  • taken from http://www.rebol.com/web-read.html

    To read a web page:

    page: read http://www.rebol.com

    To view the HTML source code:

    print page

    Or, you could just write:

    print read http://www.rebol.com

    which to me a non-perl/non-rebol user seems a lot easier than the perl example
  • best way to make money these days is to raise a few rounds...
  • by fornix ( 30268 )
    why should people use a "new language" just to do simple little tasks like downloading a webpage or sending mail?

    Not sure if I will use it, but it looks like it's fairly versatile and quite small (190K or 150K, depending on which page you read). Kind of a swiss army knife, but not a powertool. Probably not a replacement for Perl, but if it's really this small, think of how many mod_rebol enabled apache processes you could have going at once.

  • I seem to recall hearing that this is going to be AmigaDOS 5.0's de facto scripting language...

    Then I guess it's not just a coincidence that the Founder and CEO of the rebol company has "design and implementation of the highly acclaimed Amiga multitasking operating system" in his bio [rebol.com].

  • > Anyone can program, but not everyone can be > a computer scientist. The latter requires
    > training, experience and the right kind of
    > person.

    Maybe anyone can program *really badly*, but to program *well* requires "training, experience and the right kind of person", as you might say. Isn't it slightly arrogant that you, as a computer scientist, take this view?


  • If we're going to get worked up about languages, why aren't we worrying about Haskell [haskell.org], which doesn't seem to have a licensing scheme and in which Microsoft has taken an altogether too intense interest?

    Encourage the Haskell folks to settle on a good license -- PAL, GPL, whatever they can stomach. ANYTHING but a Microsoft hegemony.

    Rebol is just another offspring of the LISP family. Haskell is something different and interesting.

  • I seem to recall hearing that this is going to be AmigaDOS 5.0's de facto scripting language, to replace ARexx. From what I understand, it's abolutely phenomenal compared to it's predecessor (ARexx, in it's own right pretty nifty).

    I dunno. I saw Rexx on OS/2, it's native platform (next to mainframe), and it beat the hell out of DOS batch files. If REBOL's even half as good as the glowing commentary I've heard, I may buy a New Amiga (if it ever arrives) just to play with... :)

    [yah, yah, PERL, Linus, *nix, who-hoo! ]
  • let's have a moment of silence for the departed Amiga. It was truly a machine before it's time.


    Thank you.

    on one point tho.. yes, the psx2 has more cpu, but i don't see anyone doing vis/sim work on one of these things. oh, yah, that's because my 1.2GB world won't fit into it's local memory. Silly me, I somehow got the idea that 32MB should be enough for _anybody_..

    I think you should take your own advice.
  • The rebol home page doesn't tell me why my life sucks without rebol. While it is undoubtedly VERY cool to have rebol, I have no idea why I would want to use it. What problem does it solve for me??
  • You didn't tell me what problem it solves.
  • What exactly is the usefulness of this? Networking? Internet? What does it provide that existing protocols can't do?
  • I guess it's just to keep Microsoft at bay... which is not a bad cause in itself, but I think Unix can handle the job pretty well without any new gadgets. I keep hearing about managers switching networks over to NT and then switching back to Unix when they get tired of slowdowns and crashes. This includes MSNBC, by the way.
  • Well, I do an awful lot of ARexx, and personally I think it's one of the best additions to the Amiga.

    It's an extremely versitile language - I use it for everything from mailbox checkers with GUI's/Appicons, to maintaining my web site - if you have a look at http://www.amisite.co.uk/, all the news there is maintained by a small set of ARexx scripts. The email notification system is also ran by ARexx using direct SMTP via the virtual tcp: device.

    To cap it all, ARexx is also piss easy to learn - certainly much easier (with generally more readable results) than the likes of Perl, and I've not even started going on about how easy it is to control applications via ARexx ports...

    As it is, nobody knows what scripting language will be used predominantly for OS 5. Rexx is a possibility, and would be a very good choice if implimented in a similar way to the current Amiga, but the likes of Perl would be more familiar to people outside the Amiga. Rebol looks like a nice language, but to be honest, from what I've used of it, I'm not amazingly keen on it.

    With a little luck, OS 5 will be flexible enough to let you use pretty much any scripting language you want. Modularity is meant to be one if the things they are aiming for...



    Editor of AmiSITE, Owner of the ARexx mailing list
  • Granted for some of us, ALL programing languages are easy, but for some people, this new language might be easier to learn/use/figure out.

    God Kills.
  • Apples to Oranges

    Playstation runs games on SPECIFICALLY built hardware at TV resolution (Ugh), not to mention, when you program for the playstation, u only program for ONE type of hardware, not various types of standards and what not. Besides, when I play games on my PC, even at 1024x768, I dont see LOAD TIMES. I'd love to see a Playstation do OGR, or RC5-64. Then we'd see the diffrence.

    PlayStation blows.
    N64 & Z64 kick ass.

    God Kills.


With all the fancy scientists in the world, why can't they just once build a nuclear balm?