Carl Sassenrath Talks About REBOL 246
Rebelos writes: "REBOL is a powerful software technology (ever thought that you could write a full blown GUI Instant Messenger in only 7 KB of source code?) optimized specifically for Internet usage. Rebol Tech, the company behind REBOL, consists of only 10 people and they claim they can compete and go against .NET and Microsoft's dubious plans. Their platform has been ported to 44 operating systems so far! Take a look as to what Carl Sassenrath, ex-AmigaOS/Commodore engineer and founder of Rebol, says at OSNews about the Rebol platform, its deployment, other programming languagees, Microsoft etc." The buzzwords are pretty thick in here, and the ideas are interesting, if a little vague. If the interview makes you curious, check out the previous stories touching on Rebol as well.
Aha! (Score:1, Insightful)
They seem to be able to write such a small executable by building libraries especially for this project. Is anyone else thinking that a similar projet in C by them would have the following line: #include <guiMessenger.h>
Re:Aha! (Score:3, Informative)
REBOL is an *internet language*. For example, you can't write a graphics application with it (until now...). But if you want to write a fully featured GUI NewsReader, an Email Client, an IM or anything related to Internet or other simpler stuff (like a calculator, a simple word processor etc), then you can do it easily, because REBOL supports all these protocols internally!
So, as C has a printf() and a uint32 for example, REBOL has an email DataType! It has a NewsReader DataType etc!
Each language is good for some things and not so good for others. REBOL is the absolute Internet language.
Re:Aha! (Score:2)
That's what's a bit misleading about this - 44 platforms, but not all have GUI support, which is where I'd think the big win would be. If I want to simply script stuff on multiple platforms and one set of code I can use Perl (although it's not 300k!)
Re:Aha! (Score:2)
Bold claims (Score:1, Flamebait)
Has anyone actually USED this that can elaborate on its effectiveness?
Re:Bold claims (Score:4, Insightful)
Nice toy anyway, though.
Re:Bold claims (Score:2)
1. Open availability, through independance of the software maker
2. Structure and discipline concepts in order to avoid a mess.
Although (point 1), there is a group developing Rebol as open source (OSCAR), the last time I checked, there was still no source code available. So I started my own implementation, btw absolutely not available yet because I don't have that much to offer right now.
Rebol's best idea is the distributed computing model. They actually state that the good ol' webbrowser is a load of crap, and basically unsuitable for the things we want to do. They have a point there, because as a prof web developer, I can't believe the efforts I have to make, just to create something simple. IMHO a web browser is only suitable for text and images. I see the plugins merely as patches, fixing the shortcomings of the browser.
So Rebol says - the browser 's gotta go, and we'll introduce a new internet application environment; a successor to the webbrowser.
Besides that, Rebol is a very good language for scientific research in the investigation of polymorphical algorithms; ie an algorithm is an idea, and code is an implementation of this idea. The keyword reprogramming feature of Rebol gives flexible tools to understand the idea of an algortihm better, perhaps that one implementation could serve multiple uses. This is ofcourse not the same as a reusable object, I'm talking about a reusable algorithm.
Still, I think Rebol is kinda cool!
Re:Bold claims (Score:2, Informative)
Rebol is in the news for about two years now
It was mentined in BYTE magazine adn Dr. Jobbs, years ago.
Its your fault if you have not heared ybout it not theirs
I only did not use it because the language is YANS language. (Yet Another New Syntax).
The same results would have been possible with calling the object creation operator: new, like in C++/JAVA/Smaltalk and other languages. They name it "make".
And that goes on
OTOH nice inventions (but also not realy necessary) like variabel access of objects via the slash (like in ordinary unix path/file names).
Instead the C++/JAVA style for accessing account.balance they use account/balance.
Rebol gives you first class citizens for all kinds of web and natural datatypes, like times (10:55 is just a time object), dates (2001-10-28 is a literal for a date object). Basicly all net protocolls are supported like in curl.
Well, as I said: unfortunatly they invented yet another damn syntax
Regards,
angel'o'sphere
dialects? (Score:1)
Call me cynical but IMHO claiming to make a 44 platform language and then creating "dialects" is shooting yourself in the foot while running a marathon with microsoft, the 1 thing they could really win on is FULL platform independece, this is NOT platform independence
he, next thing we'll see is that you'll have to run the windows version of the client to play online directX games in WINE(X)
big deal (Score:5, Interesting)
As for "going against .NET", big efforts like that are not about technology, they are about marketing and people. And they are also about the long-term availability and tools support that a large company like Microsoft (or Sun, in the case of Java) brings to the table.
But even technologically, it is an error to confuse a scripting language with a system like .NET or Java. Yes, Rebol, Python, and Perl are much simpler to program than .NET or Java. Yes, they run a few important things somewhat faster. But .NET and Java are natively compiled, fast, general-purpose programming environments with static type checking and large libraries (written in Java itself in the case of Java), and that just makes them much more useful for large-real world problems. You see, another misconception is that the easier you make programming in a language, the more useful it is in real-world applications.
Re:big deal (Score:3, Informative)
I don't know about
Unless you use JITC (Score:1)
And compiled java is almost as good as compiled C (it won't win most speed tests, but the resulting code is pretty much insulated from the system, protected from buffer overflows, etc.)
Java is compiled natively (Score:2)
Sorry, but you don't understand how Java implementations work. When you run "javac", you produce byte code. That byte code gets turned into native code before being executed when it is part of a performance critical section--the native code compiler is part of the Java runtime.
Python, Perl, or Ruby do not have anything comparable: they are implemented as strict byte code interpreters (except for Jython, which piggy-backs on the Java runtime). In fact, the Java approach is better than the kind of batch compilation found in C/C++ because it allows for a lot more optimizations. For example, the JDK inlines code among dynamically loaded components.
As for the libraries and penetration available for Java, do you not think that if Sun had developed and spend untold millions marketing Perl or Python that they would not be in the same position?
Python or Perl are no replacement for Java. With a few exceptions, Java code runs at speeds pretty close to C/C++ under the JDK. Python and Perl implementations are orders of magnitude slower and nobody has figured out how to compile them into efficient code.
Re:Java is compiled natively (Score:2)
Re:Java is compiled natively (Score:2)
For any reasonably compute intensive task, compilation and optimization time is negligible. You can see that either by instrumenting a Java runtime. Or you can just look at where C/C++ compilers spend their time (a lot of reparsing of header files, as well as semantic checking and linking, none of which are incurred by Java compilers) and what fraction of the code of any real program really needs to be optimized.
2. Java bytecodes use a stack-based paradigm, which is notoriously hard to optimize. Most C compilers have a register-based paradigm, whose optimization is well-understood (if perhaps not yet perfected).
If the JVM supported general stack-based computations that would be true. However, the JVM prohibits general stack-based computations: it requires that the stack is in a "defined state" (in a certain sense) at each byte code. The upshot is that Java byte code is essentially just a binary postfix representation of the source code. Turning that into native code is no different from what the C compiler does. (In fact, the claims in the introduction to your JHP paper are wrong, precisely because Java does not use a general stack-based architecture.)
3. Java programs load classes dynamically. Every new class has the potential to clobber any assumptions you made in order to achieve any agressive dynamic optimizations. In the worst case, a Java runtime has to have all the functionality of "make" so it can compute what has changed and re-compile it as necessary.
Well, so what? The necessary dependency tracking is both trivial and fast. Furthermore, because of the way Java is designed (and unlike C), there are only very few important dynamic optimizations that dynamic loading can invalidate. Note that Java does not support class reloading in high performance code (it's supported only for debugging).
Dynamic optimization has a lot of promise, but with the state of technology today, it's hard to argue that C isn't faster than Java.
Dynamic optimization is completely up to the task of compiling Java as well as any C compiler compiles C code. Java pays a little bit of overhead for runtime safety (less than 20% by most estimates) and there are a few areas of Java where the language definition unnecessarily prohibits optimizations (this is being addressed). Except for those areas, Java as a language is pretty much as easy and efficiently compilable as C or C++. In fact, if anything, Java has additional opportunities for optimization because of its more limited pointer model. Dynamic optimization and (closely related) partial evaluation also have been understood for more than a decade, so this isn't exactly cutting edge.
Of course, Java libraries are often pretty slow. But that's because many Java libraries are written with a lot (too much in many cases) generality and abstraction.
Note, of course, that batch compilers for Java exist, but they generally perform no better than a good JIT these days.
Re:Java is compiled natively (Score:2)
AFAIK, this is simply not possible with Java. You can potential create some sort of network service written in a fast language, and access that through Java (as with a COM/CORBA object), but that doesn't offer the level of integration and speed that the other scripting languages have with their more modest integration.
Re:Java is compiled natively (Score:2)
The problem with mixed language programming like that is that C/C++ code is unsafe, and that the semantics of C/C++ code often differ wildly from the semantics of the HLL. For example, how do you extend a C++ class with Python code and pass an instance of that back to a C++ class?
The point about Java is that it is a pretty "fast language" (i.e., its common implementations are fast). You can write reasonably efficient image processing or string handling code in Java if you put your mind to it. So there is generally no need to use C/C++ other than for interfacing to system services. As a result, you get more portability and more runtime safety.
Re:Java is compiled natively (Score:2)
Re:Java is compiled natively (Score:2)
Are you sure you know how Java works? What you are describing is Just-In-Time Compilation and Hotspot'ing and it's not mandatory. Your better Java interpreters support this, not all of them do however and this isn't required by the spec (unless times have changed). Java is, in fact, compiled to byte code and may be further compiled into native code, pending your JRE choice.
As far as performance goes; you must be the only one in the world seeing close to C/C++ performance. Even Sun has admitted that Java will probably never live up the hype of replacing C/C++ for speed intensive applications. If you can get that kind of performance on most of your code, I've got a seven figure a year job waiting for you as a lead Java engineer.
Re:big deal (Score:2)
But even technologically, it is an error to confuse a scripting language with a system like .NET or Java.
.NET and Java are not even in the same class. One is a language. The other is a marketing buzzword that covers a variety of technologies. Be more precise. What part of .NET are you talking about?
Yes, Rebol, Python, and Perl are much simpler to program than .NET or Java. Yes, they run a few important things somewhat faster. But .NET and Java are natively compiled, fast,
In general, Java is bytecompiled, just as most scripting languages are. Sometimes Java can be JIT-ted to native code. Sometimes scripting languages can be JIT-ted to native code.
general-purpose programming environments with static type checking and large libraries (written in Java itself in the case of Java)
Java's library is not larger than CPAN and certainly is not larger than Jython's. The scripting languages originated the idea of large standard libraries. Python is known as the "batteries included" language. Java and C# (.NET is not a language) are relative johnny-come-latelies.
and that just makes them much more useful for large-real world problems. You see, another misconception is that the easier you make programming in a language, the more useful it is in real-world applications.
It isn't just about ease. Dynamically typed programming languages allow you to radically decrease your line count and all else being equal that reduces your original development cost and your maintenance costs. We could argue whether "all else is equal" but I think rather that I'll point you to some evidence that significant systems can be created in dynamically typed programming languages. Python case study [lyra.org], Using Lisp to Beat your Competition [slashdot.org], Smalltalk in the Large [bytesmiths.com]
Re:big deal (Score:2)
I have nearly 20 years of experience with Lisp and I can tell you that it doesn't live up to the hype. For large, multi-programmer projects, the mix of static and dynamic features Java offers works much better.
You don't have to look much further than the few open source projects based on Lisp and Smalltalk. GNU Emacs is very slow at releasing new versions and elisp packages are a mess; jedit is getting close to similar functionality after only a few years in existence. The Squeak implementation of Smalltalk is great, but it, too, has turned into a complex and largely undocumented mess. Languages like Smalltalk, Python, and Lisp are great for smaller projects and for single programmer projects.
In general, Java is bytecompiled, just as most scripting languages are. Sometimes Java can be JIT-ted to native code. Sometimes scripting languages can be JIT-ted to native code.
That's a mischaracterization. With the major Java implementations (Sun, IBM, Intel), Java is always JITted into efficient native code, and the Java byte-code is well-suited to that. None of the major scripting languages (Perl, Python, Tcl, Ruby) have a widely-used JIT, and nobody has ever demonstrated a native code compiler for those languages that results in performance anywhere near native code. CMU CommonLisp, arguably one of the best compilers for dynamic languages, does very poorly without type declarations.
Re:big deal (Score:2)
Re:big deal (Score:2)
The nice thing about JITs is that you don't have to worry about figuring out what to optimize: the runtime does it for you, and it is doing a better and better job at it.
Nobody has ever produced a compiler for Python or Perl that gave performance close to a good Java compiler. The situation with Lisp and Smalltalk is a bit more complex; there are good compilers for them, but getting good performance out of those usually ends up being more work than getting good performance out of Java.
Re:big deal (Score:3, Insightful)
Java is a marketing buzzword that covers a variety of technologies. Quoting http://java.sun.com/java2/whatis/ [sun.com]:
Notice how they don't say "Java is a language..."?In the Java 1.0 days there were essentially three things referred to as Java: the JVM, the language, and the standard library. Oh, and maybe something about delivery of applets through sandboxed bytecode. Four things Sun wanted you to think of for the term "Java". Now there are a zillion [sun.com]. Soon [jcp.org], there will be a zillion and fifty [jcp.org].
OK, OK, those aren't at the same architectural level as the big three components. But "Java" has become increasingly vague, and don't think Sun isn't encouraging this. They want non-directed feelings of goodness associated with whatever's in their (proprietary) platform this week.
If what people wanted from Java was just a language, in the traditional view of what a language is, gcj [gnu.org] would have taken over the world by now.
Re:big deal (Score:2)
Re:big deal (Score:2)
The main thing that distinguishes Rebol is a tiny footprint, and ground-up design for interaction in a networked environment.
Technologically, you have no clue what .NET or Java are about. Java by virtue of syntax and documentation is probably the simplest of languages around, and both .NET and Java run as bytecode on interpretters.
But most important, Java (and to some extent .NET) is significant for real-world enterprise applications because it defines specifications for interoperability. J2EE is not about providing programming libraries; it is about providing standards.
Rebol falls flat on this count in the same way as every other programming language: you have to lock yourself into a vendor at API level, not at language level.
Lisp-ish option with GUI (Score:2)
Check out DrScheme [rice.edu] from the PLT group [plt-scheme.org]. It's "an interactive, integrated, graphical programming environment for the Scheme programming language". It's cross-platform, released under the GPL, and includes cross-platform GUI support (*nix & Windows), a comprehensive help system, a bunch of useful libraries for graphics, Internet, COM access on Windows, etc., as well as some useful applications [utah.edu] like a web server, web browser, Gtk interface, a graphical IMAP mail client, and some graphical games.
The underlying Scheme implementation, known as MzScheme, includes a fast interpreter as well as a compiler that can compile to bytecode or native code.
Re:Lisp-ish option with GUI (Score:2)
If only the common lisp world had something to accessible and free.
Licensing (Score:5, Informative)
That's a real shame, because other than that, it is really quite impressive. They should think about a Transgaming-like business model, where users subscribe and the code becomes free when there are enough subscribers.
Re:Licensing (Score:1)
lack of a free run time interpreter kills it right off the bat tho.
And I thought Lisp was ugly! (Score:1)
How is this any different from perl & tcl/tk? Couldn't the same be accomplished?
Don't think it will ever take off if you ask me...
Re:And I thought Lisp was ugly! (Score:1, Funny)
There, I said it. I am actually that lazy.
Language Lockin problem (Score:4, Interesting)
No matter what you think about Microsoft and its practices, the .NET strategy is more likely to attract a wide variety of developers because it allows them to use most any language they want. (.NET has an OS lockin problem, but the 90%/10% ratio is in MS's favor in that case).
REBOL may be extremely cool; I'm going to have to take a look at the language spec. However, I don't think that any single language will ever take over the whole world.
rebol kicks bootie (Score:4, Interesting)
If it were more widely accepted, rebol would make a really sweet web language, too, allowing more control over the interface, with less garbage in the page's source code.
Use OpenRebol instead (Score:1, Interesting)
Re:Use OpenRebol instead (Score:2, Informative)
Re:rebol kicks bootie (Score:2)
I'm sure rebol is nice and you can be productive in it, but it won't have anything that you can't do in another language.
Re:rebol kicks bootie (Score:2)
For beginning users, this ease of use is important because it frees them to do more creative things, faster, and easier.
Having an OpenRebol, however, would be very very nice, just for more advanced users who want to roll their own rebol or rebol like substance, with better features.
Re:rebol kicks bootie (Score:4, Insightful)
Without libraries, if you wanted to change or upgrade your HTTP component, you'd have to d/l another 900k executable, instead of using something nifty like the CPAN module.
There really is nothing stopping somebody from compiling Perl, Python, Tcl or any other language and a bunch of it's essential libraries into a single 'executable' you could use to do exactly what the REBOL environment does.
Its just not usually done, because most people using these tools recognize the benefits of being able to dynamically load libraries as needed, and add/upgrade/modify/swap them individually.
This is not to say that REBOL doesn't do the job, since it obviously does for your purposes.
However, I, like many others, would have to take issue with the idea that YAHASL (Yet Another Half Assed Scripting Language) is going to 'revolutionize the internet' in the same way that Java has completely failed to do.
Re:rebol kicks bootie (Score:2)
Your Amiga zealotry is amusing, but the idea that REBOL will be successful because it is the creation of one of the guys responsible for Amiga's success (we've seen a lot of that lately, haven't we) is about as valid as the idea that the BeOS would become wildly successful because it was the creation of one of the guys on the Apple Macintosh team, also one of the very best computer systems in history.
Why do it the hard way? (Score:2)
I found this off the internet, it's a way to use a
http://www.dotnet101.com/articles/art031_StockQ
It's kind of an interesting kludge. You place a
Better yet would simply be if Yahoo(or whoever) provided a web service you could instantiate, pass it the stock you want a quote on and it would return a value. Makes life tremendously simpler and no need for about half the code that was written in the above article.
Enjoy
Surely you are smoking crack... (Score:1)
...will give you a nice comma-sepped response:
"MSFT",62.20,"10/26/2001","3:00PM",-0.36,62.32,
"ORCL",13.58,"10/26/2001","3:00PM",-0.37,13.71,
"INTC",25.86,"10/26/2001","3:00PM",-0.24,26.01,
Why would you endure HTML-parsing hell when Yahoo provides this interface?
Happy Halloween,
G. Sherman
Re: (Score:2)
If you thought C++ was a bad idea... (Score:2, Interesting)
I mean, what happens if you don't happen to like the way that this thing handles TCP connections on your particular platform? You are basically screwed, as not only are underlying routines written in another language, but you don't even get to see the source! I'm shocked that Slashdot would even post such a thing here, considering that the closest analog that I can find to this is VB, and, honestly folks, we do not need more idiots of the using class writing their own AOL Instant Messanger or other crap like that that will probably kill the network I admin.
Re:If you thought C++ was a bad idea... (Score:2)
You must provide de
Re:If you thought C++ was a bad idea... (Score:1)
When did Bush say that? Can you give us a link?
Re:If you thought C++ was a bad idea... (Score:1)
http://www.infidels.org/news/atheism/arguments.
Re:If you thought C++ was a bad idea... (Score:2)
Because if you can link to it, it must be true...
oh, no (Score:1, Troll)
Seriously, people should be more careful advertizing such toy scripting languages. Some managers take their words for real and then force us, developers write serious systems using them. What about concurrency/synchronization? memory management? OO constructs? how efficient are byte manipulations? Does tail recusion eats up stack? It is nice to have 'ftp' as language construct but that does not make it 'Internet' developement language.
another Perl? (Score:2)
7KB is nice... (Score:1)
I'll support anything that is not following that path. Things don't have to be BIG to be good, (of course I am talking only software here
On another note, the new
Amazing.... (Score:1)
Just too bad I have to learn "yet another programming language"
Great, rexactly what we need. (Score:1, Offtopic)
- icq
- aim
- msn
- ym
on my box right now.
Though I see the point. There should be no reason an instant messaging system be over one meg. Lets be honest, you're sending small bits of data between two boxes across the net.
Re:Great, rexactly what we need. (Score:1)
This is waaaaay off topic, but if you weren't just exagerating, you need to download the trillian IM client. I use it now for my accounts on all those above plus IRC. I'm really happy with it (it's not as flaky as Jabber).
http://www.trillian.cc
-Russ
(CEO) talks about (a new product) (Score:1, Funny)
We only have 10 employees, and no advertising budget, so with the collapse of the dot-com hype machine I need a new way to generate press to show to venture capital companies.
beating MS is not... (Score:1)
Ever thought (Score:1)
Ever use Delphi? Anyways, I would hardly call that "full blown".
A meta-circular view of a bovine backside (Score:5, Funny)
Re:A meta-circular view of a bovine backside (Score:5, Informative)
He didn't just make that term up, if that's what you're thinking. A "metacircular" language is a language which is implemented in itself. The most common example of this is Lisp - in fact, the very first computer language interpreter ever was a Lisp interpreter, written in a Lisp-like language as something of a mathematical exercise, by John McCarthy around 1958. This approach has proved very powerful, and some good language implementations have been written this way.
The term is probably most famously used in SICP [mit.edu], in a section entitled The Metacircular Evaluator [mit.edu].
Of course, none of this implies that REBOL is any good, but the fact that Sassenrath is aware of such things is probably a good sign. If you read the rest of the paragraph after the term "meta-circular", you'll see that he is actually referring to a relevant aspect of REBOL, namely that the GUI system is implemented in a dialect of REBOL. So it isn't quite as bad as if he'd said that the language runs on free tachyon energy...
Re:A meta-circular view of a bovine backside (Score:2)
Huh. In the compiler world, that's called bootstraping. Face it, they really just want you to ooh and ahh over the complex sounds of "meta-circular view of language semantics" without really understanding it. If the fact that the language is bootstraped is such a selling point, they could have simply said "implemented in REBOL".
I guess someone had to take Scriptics's place as the peddler of hype over technical merit.
Re:A meta-circular view of a bovine backside (Score:2, Informative)
In interpreted languages that allow procedures to be treated as data values, it is very easy to write an interpreter for those languages in the language itself, because the language has features that make it easy to write code that manipulates other code, evaluate expressions, and so on. The same is not true for writing a language like, say, C, since C itself doesn't contain any particular features oriented towards such tasks. Writing a C compiler in C has to be done "the hard way". Writing a Lisp interpreter in Lisp is trivial by comparison.
Saying that a language is capable of implementing itself in a metacircular fashion implies that the language has capabilities which go beyond those in traditional languages like C, Basic, or Java, none of which can really be said to be metacircular. An important implication is the ability of a language to operate on its own code at runtime, which is why metacircular languages usually support higher order functions. Metacircular languages are also good at implementing other languages with minimum effort.
Smalltalk is another language with metacircular features. For something more unusual, here's a brief mention of an implementation of Postscript in Postscript [catalog.com]. I picked this link because it contains some clues to some of what a metacircular interpreter can buy you; I'm not sure I can explain it any better without getting into code samples in Scheme, and SICP does that better than I could.
Based on Sassenrath's description, it sounds as though REBOL has some features which can validly be described as metacircular. If he's trying to dazzle people with his language, he's at least doing so in a way which communicates something meaningful to those familiar with the terminology, as opposed to making completely gratuitous claims.
More detail... (Score:3, Interesting)
The Lisp-like language I was referring to is the one listed on this page [uni-erlangen.de] - look for the heading "The First Known Interpreter". This language is not Lisp as we know it - it used McCarthy's M-expression syntax - and syntactically, it is not the S-expression language that the first interpreter was capable of interpreting. Hence my statement that "the very first computer language interpreter ever was a Lisp interpreter, written in a Lisp-like language".
In "The implementation of Lisp [stanford.edu]" by McCarthy himself, he describes the following:
This was why I said McCarthy wrote the interpreter as something of a mathematical exercise. He was writing his "universal Lisp function" to illustrate a point in a paper, and didn't even consider that he was writing an interpreter - apparently Steve Russell noticed that. So that's why I said it was written as "something of a mathematical exercise".Do I get that cigar now?
forever a circular argument. (Score:2)
Any guesses? (Score:2, Insightful)
"...we have a partnership that will be putting REBOL onto 30 million desktops within the next few months."
I just had images of millions of AOL cd's dance through my head. With the types of services this provides and their claims to be a .NET alternative, who else could they be partnering up with?
Looks like JNLP.. (Score:2, Insightful)
Run the installer, took a few seconds (great!)
Took a look at the demos, only a few seconds to download and view (quick!), and then I quickly lost interest. The demos are rubbish!
Visited some of the other Rebol enabled sites, the demos did not get any better!
I just don't see anybody wanting to write any serious applications for this platform. JNLP the Java web application launching protocol has much better demo applications available. http://java.sun.com/products/javawebstart
Show me a serious application such as a paint program or a game and i'll take this seriously otherwise forget it!
Re:Looks like JNLP.. (Score:1)
Java and Java Web Start are a long way from this thing. I mean Rebol's a 300k download for starters - even with all the bells and whistles it's less than a meg. Compare that with the 20meg download for Jdk1.3. And Rebol seems to work well over a slow connection. I was just playing with the demo apps and they download really quickly and run fast with little delay... unlike applets.
But along the Java line of thought, does this remind you of the Marimba stuff from circa 1996? Remember Bongo and Castanet and how you were able to write your own custom Java-ish apps that would be internet updateable? Rebol is obviously a much better implementation, but it's very similar in idea. The control panels are similar, the demo apps are similar...
I'm not ready to give up Java yet, especially for this wacky language that has little to no support (30 million upcoming clients or no), but after playing with it, I can see why Rebol's pretty cool.
-Russ
Re:Looks like JNLP.. (Score:2)
Java Web Start does appear to be a new (and nicely implementated) instance of the same idea that Marimba had working in 1996, though.
Re:Looks like JNLP.. (Score:1)
instant messager looked pretty cool - maybe serious, the skin selector looked pretty cool. There were also some image manipulation demos I saw that looked pretty cool. And the desktop itself looked relatively serious - I've never seen a Java desktop.
Re:Looks like JNLP.. (Score:1)
Who cares. (Score:1, Flamebait)
Re:Who cares. (Score:1, Troll)
Hey, you misspelt "Python."
Reminds me of AMOS (Score:1)
What Larry Wall Thinks (Score:2, Informative)
Re:What Larry Wall Thinks (Score:1, Insightful)
I read that article three years ago. Most of the concerns that Mr. Wall mentioned back then have been fixed already, particularly the speed issues.
The version of REBOL that he was reviewing was based on a Scheme-like engine, and thus was comparable in speed to interpreted Scheme. More recent versions of REBOL, even a couple months more recent, have been based on a Forth-like engine. This allowed a sometimes ten-fold increase in speed with almost no language changes.
REBOL is now comparable in speed to Perl (often as fast, but with some differences, particularly math). No regular expressions though - you'll have to make due with the much more powerful recursive-decent parser dialect, with backtracking even. Oh well :)
Perl people might find the lack of operator precedence annoying, though (and probably the readable code as well). You get used to it.
Hello...? (Score:1)
Re:Hello...? (Score:1)
"Reblets" look well suited for wireless handhelds (Score:2)
They have a desktop/OS app that looks cool but doesnt make much monetary sense to me on a desktop unless you custom design a cheap thin client to run it and only it on.
What does make sense though - is running these little apps on a wireless handheld. Build the Rebol assembler into an ASIC so it runs native code quickly - and let the application server do all the work.
Rebol looks cool but just like most java apps on the desktop are passed over for native code, I dont see this flying. Perhaps if they sought to fill the niche market of weak wireless devices theyd have more success. In either case good luck to them - I havent had the chance to do any cool machine level programming like this since I lost my TI and its various shells.
Regular Expression Support Awkward (Score:1)
Can anyone confirm this? Is text parsing in REBOL best done with regular expressions or some other means?
Astroturfing? (Score:1, Flamebait)
Re:Astroturfing? (Score:1)
Compete with .NET and Microsoft? (Score:1)
So in other words, they are a company of 10 employees, but they have about $147 billion in capital?
IM in 7K?!? IM in under 1K!!! (Score:2)
I betcha if I throw in a GUI via Perl/Tk it'll bloat to 7k. Maybe.
Re:IM in 7K?!? IM in under 1K!!! (Score:2)
tygris@tygris:~/perlIM$ ls -l
total 24
-rw-r--r-- 1 tygris users 152 Oct 28 21:44 pim
-rw-r--r-- 1 tygris users 994 Oct 28 21:54 pim.pl
-rw-r--r-- 1 tygris users 675 Oct 28 21:25 pim.pl~
-rw-r--r-- 1 tygris users 870 Oct 28 22:18 pimd.pl
-rw-r--r-- 1 tygris users 994 Oct 28 21:55 pimd.pl~
-rw-r--r-- 1 tygris users 142 Oct 28 21:25 pim~
Why not Perl/Tk (Score:2)
Why this stuff sucks (Score:3, Interesting)
7kb of source code, supposedly Small? (Score:1)
Languages such as python and perl are designed for this sort of thing - they have amazing libraries that let you concentrate on your app and its problems.
Rebol is not open sourced, yes?
Alternatives that are amazingly powerful exist, yes? And these alternatives are open source... and have huge communities behind them...
I'm all for Yet-Another-New-Language attempts, but please, make it open! Otherwise its just as bad as C#...
rebol linux fonts (Score:2)
They hadn't updated it to use the XRENDER/Xft framework for anti-aliased fonts when I last used it, and it completely ignores that fact that my X Server is running a 120dpi resolution, so all the GUI elements are nearly unreadable.
It also seems to use the first font it comes across - seeing as I have a lot of odd special-effect fonts installed, the GUI ends up looking even stupider...
The language isn't the point. (Score:2)
If you can't help considering the Rebol Desktop's merits apart from Rebol's shortcomings as a "power-programmer" language, consider that a population of non-programmer internet users whose tastes and browsing activities are expanding might find a very simple scripting language that enables them to easily do a lot of useful stuff with web pages and e-mail quite useful.
All this angst! (Score:4, Interesting)
In Perl, munging through text files is a snap. The syntax is succint, and regular expressions are supported at the language level. But that doesn't mean Perl is good for everything, though. Regular expressions don't scale up to what you'd need to write a full BNF parser in Perl. And, sure, you can hook to http and ftp libraries, but they aren't integrated into the language in the same way that the "file exists?" operator is.
REBOL has several strengths. One is that its parsing features effectively *are* BNF, so you can write complex parsers for mini-languages with great ease, and without resorting to lex, yacc, and such. The other advantage is that having language-level support for internet protocols is very convenient. Sure, you can get at them through a Perl module, but if you argue that then you have to ask why regular expressions shouldn't be a separate module as well.
All this blind bashing of languages is tiring. It's exactly like the kiddies who bash whatever game console they didn't get for Christmas.
Re:C: A Dead Language? (Score:1)
Re:C: A Dead Language? (Score:1)
Re:C: A Dead Language? (Score:1)
Re:C: A Dead Language? (Score:1)
There's even a little remark in there (veiled threat is more like it) about how, if you're a traditional C programmer, you won't enjoy the book and will hate VB, but you'd better read it anyway because you still want to have a job. It's classic stuff.
Re:C: A Dead Language? (Score:1)
Re:Ha! To You! (Score:1, Informative)
All you need is the 800 KB runtime REBOL library, which is the same for ALL your Rebol applications. This is why REBOL will own your Java and C# crap. Because all its apps are SO SMALL. When the executable Internet, that Microsoft wants to deploy, will come, the C# applications will load slowly from your DSL modem, as they will be several MBs for let's say, a graphics manipulation app. But with REBOL, 7 KB will always be 7 KB ! The REBOL apps will download and run even from a 33.6 kbps modem *instantly*. Because you only download their small source code and interpret them on the fly.
Re:oh goody! (Score:1)
Re:oh goody! (Score:1)
Oh, yeah...this topic is about programming, isn't it? If young master AC upthread wants eyecandy he's on the wrong site. I'd recommend spankoff.com
Re:Carl Sassenrath is a hero to us Amiga users. (Score:3, Insightful)
After the second such post you're just alienating Slashdot readers that might otherwise have been interested in your project.
For those who don't know what I'm talking about, look at Mentifex's user info:
http://slashdot.org/~Mentifex/ [slashdot.org]
Click some of the links...Notice how every post he's made is an ad for his project, usually completely off-topic for the Slashdot article, but linked in with silly connections (ie. in an XP related post 'Artificial Minds (link included) will not use XP!').
Anyway, to keep THIS post somewhat on-topic, REBOL is a fairly nice language but it will never catch on with the silly greedy-licencing model they have. When is the last time a language that you had to pay royalties to use caught on? (Hint: Never).
Re:Carl Sassenrath is a hero to us Amiga users. (Score:1)
And to be slightly on topic, I don't know much about Rebol but I love the name "Carl Sassenrath". It conjures up the image of a bearded genius scientist type :).
Missing the point (Score:3, Insightful)