|Interview: Carl Sassenrath on REBOL|
|By Eugenia Loli on 2001-10-22 18:16:08|
|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?) designed from the ground up to enable a new era of distributed Internet applications. The technology provides a ubiquitous, lightweight model of distributed computing that operates across all types of computer systems. REBOL is a true distributed computing architecture. Applications and data become distributed across all devices. REBOL is completely device independent, so it does not matter what operating system or hardware is being used. Every system of the Internet becomes an independent resource that can process and communicate information. The REBOL kernel currently runs on more than 40 different operating systems -- everything from large Sun Solaris servers, to Windows and Macintosh PCs, to Linux, BeOS, down to CE handheld devices. And it is here to revolutionize the Internet, by introducing the X Internet (also called as 'XNet') through the REBOL Internet Operating System (IOS). Read more of what Carl Sassenrath, Rebol Tech's CTO and founder, has to say about the future, Rebol and the race against Microsoft's .NET Services.
1. Which role Rebol/IOS will play for XNet, the new, "executable" Internet, which analysts say that it is a revolution that has already started?
Carl Sassenrath: REBOL/IOS will play a central role in the X Internet. REBOL was designed for distributed computing, providing not only the semantic exchange of information (data and metadata), but also the interpretation of that data. These are essential requirements of the XNet.
2. Is Rebol/IOS a low level operating system, or "sits" on top of existing OSes?
Carl Sassenrath: IOS defines a new type of OS, creating a common layer that currently spans 44 different OS/hardware systems and provides a standard environment for all REBOL applications (called reblets). It is to the Internet what a computer OS is to the devices of its machine.
3. I can't help thinking that Rebol/IOS is very similar to the .Net and Mono strategy while the Rebol language itself plays the role of C# somehow. Applications launching through the internet and they are processing data found also on the net. How Rebol Technologies will be able to compete with Microsoft, AOL and/or Mono?
Carl Sassenrath: You uncovered our secret, but we started it long before .Net. REBOL is a .Net that works. That sounds bold, but REBOL will succeed because it possesses the same qualities that helped the web succeed. REBOL applications are only a few pages of text, and users can quickly modify and extend existing applications to meet their needs.
In REBOL, applications are agile. You don't need SOAP, WSDL, SCL, NASSL, UDDI, UML, MSXML, XSLT, RMI, IIOP, DCOM, DNA, or anything else. You write it, and it works - just about everywhere. If you need object brokering such as Corba, you can use a broker such as Rugby. Rugby is advanced, robust, fast, and it is written in only 1500 lines of REBOL.
Also, and not to be overlooked, we have a partnership that will be putting REBOL onto 30 million desktops within the next few months. We'll say more about that very soon.
4. Among your plans is the ability to run REBOL/IOS and REBOL to any device and to any operating system. Do you find the porting process of your technologies to smaller devices, like cellphones or PDAs, challenging?
Carl Sassenrath: These smaller devices are getting bigger every day. We have several PDAs running REBOL, and we have a wireless partner that now runs REBOL on a variety of cellular devices. The limits are no longer the memory or speed of devices, but more often their native operating systems. For instance, we would love to run on PalmOS, but its memory model is archaic, making the device unusable for advanced programs.
5. When will the mass deployment of your products begin? Are you preparing a marketing boost or will Rebol lean on its faithful developers? What is the key for IOS' success?
Carl Sassenrath: REBOL's use has been growing rapidly with developers and technical users -- more than 500,000 in distribution so far. Over the next few months, we will focus on the collaborative network market, where the REBOL X Internet provides a great advantages. In addition, the massive distribution partnership I mentioned above should help a lot.
6. How is Rebol Technologies going to profit from the whole project? Will you be a service and tool provider, or will you only offer the development tools needed and help other companies to build such networks?
Carl Sassenrath: Actually, we're not trying to profit directly from the tools. For more than three years users have been freely downloading REBOL from our website, and that will continue. The big revenue will come from our partnership agreements, VAR and OEM licences in collaborative communications and other domains.
7. What are the immediate plans for the new version of the Rebol language? Are you planning to add OS specific bindings, for example use of DirectX through Rebol?
Carl Sassenrath: The immediate plans are to expand REBOL's networking capabilities by creating very secure private networks for collaboration, as well as enabling next generation peer-to-peer networks. On the collaboration side, we are developing more than 40 reblets that provide shared polling, messengers, alerts, whiteboards, calendars, brainstormers, and more. From the system side, we will add several new "dialect" engines for 3D graphics, inferencing ("AI"), additional network protocols, advanced sound synthesis, and more.
8. I always thought of Rebol at the same "programming level" as Python is, but going through your docs, I see that Rebol is very optimized and specialized to Internet programming. Please describe to us some technical differences between the two popular languages.
Carl Sassenrath: A friend of mine says it's like the movie "Matrix" where you are offered either the red pill or the blue pill. Most programmers stick with the blue pill. The folks who take the REBOL red pill wake up and can never go back. I've had companies call me to complain that a few of their programmers started using REBOL and are now "ruined" because they refuse to go back. REBOL is a highly disruptive technology.
Python and Java are excellent for traditional computer languages. I've been involved in the design and implementation of many languages, and I can tell you that every language has its purpose. However, REBOL was designed from a meta-circular view of language semantics. That is, REBOL is what you need it to be. It morphs to provide the maximal expressive power for any problem. Look at how REBOL creates user interfaces as an example. The GUI system is not a low level API, but rather a dialect of the language. The Visual Interface Dialect (VID) is built on a fundamental compositing engine, but there is no reason why you can't have any number of such GUI dialects, depending on the problems you need to solve.
In addition, REBOL breaks many other language rules. For instance, it includes 40 native datatypes (most languages have five or six), 14 Internet protocols, compression, encryption, and reflection built-in. You don't need to remember what library to include or to link with. Some people underestimate REBOL because most of its programs are tiny. But, we think that's an advantage, because it makes the code easier to write and maintain.
9. Are there any plans to create a web browser written in Rebol, or at least, a web browser that can interact with Rebol Internet applications?
Carl Sassenrath: There are many good browsers out there, so we'll just find better ways to plug into them.
10. Are your products currently ported to more platforms/OSes? If yes, which are these platforms?
Carl Sassenrath: We are now on 44 platforms. BSD 4.0 is the most recent. We support about 150 binary distributions of our products. Of course, we could not do that without REBOL. It builds itself, it tests itself, it uploads itself, it builds our website, it handles our communications internally and with developers, etc. There's no end to what REBOL can do or how far it will go.