6 ms·
REBOL 3 Source Code Released
- itsuart 14y agoRepo: https://github.com/rebol/r3 https://github.com/rebol/r3
- adamnemecek 14y agoThe wikipedia description makes it seem like it's cat's pajamas. Has anyone coded in this? If so, what's your experience?
- dfc 14y agoWhat wikipedia descriptions of modern languages do not describe a computational utopia?
- softbuilder 14y agoBrainfuck comes to mind, but disclaimer: I haven't looked at the wikipedia article for it in quite some time. edit: preposition
- kemiller 14y agoI tried using it a couple years ago, just as a sample. It's very very unlike any other language I've ever used. Its weirdness comes from a more practical place than other weird languages, which typically have more of a mathematical or academic axe to grind (APL, *ML, Haskell). Lisp-y, and smalltalk-y with a lot of its own dialect. Lots of batteries included. Now that it's open source I'm more interested in putting the time into understanding it better.
- sixdimensional 14y agoI wrote a small email client in Rebol in 2001, it could download email via POP and send via SMTP directly via the protocols and a socket. It was a TINY program and it worked cross platform due to the fact that there was a web client for Rebol. I actually used it in production just for myself. Amazingly, I just googled my name and Rebol and found the mailing list archives where I was asking about the project... ah, the power of the web's institutional memory! Rebol (the language) took a bit of getting used to because the syntax was more functional in nature (although it is note a pure functional language). I had just come from working on some C++ and CGI/Perl programs so it was pretty different. It was a fun experiment to stretch the mind. Honestly, I hadn't given Rebol a thought since I just saw this post... nice to know it's still alive and well. The book (still have it on the shelf) I first used as a reference was "Rebol: The Official Guide".
- sixdimensional 14y agoLooking back I recall this article I read in 2005, it was interesting to note it had some similarities to the way data is expressed in JSON and similar ways to declare functions that we now use in javascript (myfunc = function(input) { }, etc.). JSON was released in RFC 4627 in 2006 - the timing and similarity is interesting. http://www.rebol.com/article/0206.html http://www.rebol.com/article/0206.html
- tomcon 14y agoNot an accidental similarity, Douglas Crockford credits Rebol as an influence for json. https://erikeldridge.wordpress.com/tag/crockford/ https://erikeldridge.wordpress.com/tag/crockford/
- gchiu 14y agoDouglas Crockford says JSON was influenced by REBOL.
- teh_klev 14y agoHere's Doug Crockford mentioning Rebol as an influence: http://www.youtube.com/watch?feature=player_detailpage&v=-C-JoyNuQJs#t=1307s http://www.youtube.com/watch?feature=player_detailpage&v...
- andrewcooke 14y agoapache licence. https://github.com/rebol/r3/blob/master/LICENSE https://github.com/rebol/r3/blob/master/LICENSE isn't that significantly more free than rebol in the past? edit: yes, the original rebol licence didn't allow modification. http://www.rebol.com/license.html http://www.rebol.com/license.html
- lucian1900 14y agoSadly, this is perhaps too late. This would've been much better timed when Rebol was more popular. It is very, very cool, however.
- itsuart 14y agoLooks like REBOL community was quite seclusive: they weren't using web nor IRC to communicate, but AltME[1]. So, who knows what will happen, when they "come out". >It is very, very cool, however Agree. It feels* like if Clojure is a Lisp done right, then REBOL is a metacircular scripting done right. [1] http://www.altme.com/ http://www.altme.com/ * It's just feeling, no intention to start holywar.
- tomcam 14y agoPolitically incorrect question for Rebol jocks: Doesn't Red (http://www.red-lang.org/ http://www.red-lang.org/) appear to have the vitality lost years ago by Rebol? Am seriously not trying to be rude to Carl Sassenrath, Rebol's inventor. Just discovered Rebol lately so am not very tuned in to the ecosystem. But Red has been open source for some time, it appears to be dramatically faster, and seems to be free of Carl's understandable urges to keep some kind of control in an anarchic world? I say this as someone trying to decide which one to invest my very limited non-work time in one of these two very worthy projects.
- andrewcooke 14y agonot sure if you're astro-turfing or really unaware of the difference, but in its time rebol had the level of awareness of, say, the rust language now - not something a lot of people used, but with a decent profile in the technical press. a known, interesting, but unlikely to make it language. a class B if you like. in comparison, red is class C. it's new, has little awareness and little coverage. it's even less likely to make it. this is not a judgement on the merits of either language (although if you want that, rebol's syntax aware approach looks more interesting to me than anything red has to offer), just trying to give a historical perspective: rebol was bigger than red is now and, i suspect, still has more users, even now. on the other hand, rebol is clearly heading down while red can only go up.
- andrewcooke 14y agooh, sorry - above is wrong if red is derived from rebol. sorry again.
- onetom 14y agoRed is like a modernized Rebol, so if you learn Rebol, you have (mostly) learnt Red too. Red doesn't constrain the anti-complexity fight to the language itself, though. It can already set you free from the "mother of all bloatwares", the GNU compiler toolchain and the "inherently insecure" C language. Simply (hence a bit inaccurately) put: You can write programs with the same logic and concepts as C but with Rebol syntax. It's good because it has a simpler&less syntactic sugar and allows unicode words as identifiers. Such a "source code" is valid Rebol DATA too, so it's easy to introspect, transform, analyze, decorate it, you don't have to parse it as string... You can compile - for example - a Linux ELF executable for the ARM processor on an x86 Windows machine and all you need is: 1, the ~300kiloBYTE rebol.exe (just 1 file!) http://www.rebol.com/downloads/v278/rebol-core-278-3-1.exe http://www.rebol.com/downloads/v278/rebol-core-278-3-1.exe 2, the ~400kiloBYTE https://github.com/dockimbel/Red/archive/master.zip https://github.com/dockimbel/Red/archive/master.zip (from which the compiler is ~100 script files...) NO MORE automake/autoconf coming from packages depending on m4, make, awk, sed, tr, etc and of course "need" a package manager which depends on perl/python/ruby and their "standard libraries" which alone are stored as a sea of small files, theeeen u need GCC with the ocean of .h files also packaged as *-dev packages coming with their meta info in their own files, etc etc... Feel the contrast? So Red is really super-cool, but for now it still depends on the ultra-small Rebol binary...
- abecedarius 14y agoWonder if this code has survived into this version: http://ll1.ai.mit.edu/marshall.html http://ll1.ai.mit.edu/marshall.html Added: no: https://github.com/akavel/sherman https://github.com/akavel/sherman
- mhd 14y agoErm, interesting style of in-line documentation, with the function declaration embedded in the comment block. Also, alphabetically enumerated (categorized?) source files.
- albertzeyer 14y agoI am reading about Rebol the first time now. And I have some problems to understand what exactly it is. Just a scripting language like Python but with some more stuff included, mainly a cross-platform feature-rich GUI framework? And a very own syntax... Or more like an embedded programmable VM like Smalltalk? Also, http://www.red-lang.org http://www.red-lang.org was mentioned here (and I also haven't heard about it before). How does that compare?
- skrebbel 14y agoIt's a programming language + standard library. The particular feature of REBOL that makes is special is the ease with which you can define your own DSL within the limits of the REBOL lexer. This allows libraries for specific purposes, such as making UIs or parsing text, to be very succinct yet readable. A bit Lisp-y but with a stronger focus on what in Lisp would be macros. When first published, REBOL was way ahead of its time, having explicit support for a variety of well-designed DSLs before the term DSL even existed (or at least, was widely known). The downsides of REBOL always were its closed source commercial model and the lack of a strong community as a (probable) result therefore, plus the fact that by default, the UIs made by the built-in UI library look absolutely horrible, which isn't a big problem really but helps scare newcomers away. That one first downside seems to have been taken away now. A nice REBOL showcase is, IMHO, it's oneliner page: http://www.rebol.com/oneliners.html http://www.rebol.com/oneliners.html Plus the (excellent) associated commentary on some mailing list: http://www.xent.com/pipermail/fork/Week-of-Mon-20091109/054578.html http://www.xent.com/pipermail/fork/Week-of-Mon-20091109/0545...
- iso-8859-1 14y agoWhere can I find stuff implemented with REBOL? Stuff like factorial, a web server, Unix tool implementations.
- draegtun 14y agoRosettacode.org is great place for factorial (http://rosettacode.org/wiki/Factorial#REBOL http://rosettacode.org/wiki/Factorial#REBOL) and other code examples (http://rosettacode.org/wiki/Category:REBOL http://rosettacode.org/wiki/Category:REBOL).
- onetom 14y agoThe "Script library" for Rebol is here: http://www.rebol.org/script-index.r http://www.rebol.org/script-index.r
- onetom 14y agoA pretty full featured web server: http://cheyenne-server.org/ http://cheyenne-server.org/ But I also built an infrastructure configuration server from the 2kB http://www.rebol.org/view-script.r?script=webserver.r http://www.rebol.org/view-script.r?script=webserver.r to avoid LDAP/Chef/Puppet and similar bloatwares. What do you consider a Unix tool? File and directory handling and serial port access just as HTTP/IMAP/POP/SMTP clients are all built in. See http://www.rebol.com/docs/core23/rebolcore-12.html http://www.rebol.com/docs/core23/rebolcore-12.html and http://www.rebol.com/docs/core23/rebolcore-13.html http://www.rebol.com/docs/core23/rebolcore-13.html Instead of lex/yacc it provides the parse function and instead of grep it also provides the parse function (with a more readable BNF-like syntax, which is less effective to write for very small hacks, thats true).