Oh, I discovered Rebol in 2004. Fun language. I even tried to use it on the clock once. Had to settle on Perl, which accomplished the task I needed much more quickly. Also had some fun writing about random experiments with Ruby.
year → 2004
Dec 26, 2004 (Updated Apr 9, 2017)
REBOL is the “Relative Expression-Based Object Language”, and it was developed by Carl Sassenrath. Who is Carl Sassenrath? Why, he’s one of the people responsible for the amazing operating system which powered the Amiga computer. What’s the Amiga? Why, the Amiga was only the incredibly robust and cool computer released by the same company that brought the world’s first personal computer, Commodore. What’s Commodore? Stop bothering me, kid. Just take it from a relative old-timer: the Amiga put a whole heck of a lot of power into a consumer-affordable personal computer, and it wasn’t really matched by other computers for a good five or ten years. Nowadays, I look at REBOL and it feels like the first language I’ve come across to take lessons from past languages and apply them in a new context, rather than just reimplement them with different syntax.
Dec 26, 2004 (Updated Jul 11, 2009)
I’m sure you thought that getting started was fun, but it really didn’t do anything to show off REBOL. I’d like to go through almost exactly the same process, but this time focussing my attention on REBOL/View. So let’s give it a try!
Dec 26, 2004 (Updated Jul 11, 2009)
One of REBOL’s strengths is the rich selection of native datatypes. This selection is part of what makes it so easy to express solutions to your problems, because there is less “mental mapping” to make as you use or create an abstract type to represent an important concept. Learning this selection is also one of the challenges for those who are trying to master the language. I am facing that challenge right now, so I decided to make this table of native REBOL datatypes and how they are expressed.
Dec 22, 2004 (Updated Apr 9, 2017)
This is unusual. I’ve come across the first language that I don’t want to tell you about. I don’t know why I want to keep REBOL a secret. It has been very useful even in the limited roles that I have given it so far. The language is consistent and pleasant to work with. It has a richness of datatypes that just can’t be matched by other languages. The GUI library, View, is surprisingly straightforward for simple tasks, and there are excellent libraries like RebGUI to make it just as easy for more elaborate interfaces.
Oct 28, 2004Okay, I’ll be honest. LISP scares the dickens out of me. It’s ancient by the standards of computer languages. The language is completely different from any of the stuff I use in my day-to-day programming. Yet it has all the features of those languages and more. Garbage collection? Got it. The ability to pass functions around as easily as an integer? Done (and not in a cranky C function pointer manner, either).
Oct 1, 2004 (Updated Jul 11, 2009)
Thanks to everybody for the positive feedback on the first MIRE. I still have your attention, so I’ll move on to my next exercise. This one is a little more involved than the first, but bear with me - the results should be worth it.
Sep 15, 2004 (Updated Jul 11, 2009)
People who come to UNIX (or Linux) from the world of Windows are often disappointed by the apparent clunkiness and lack of unified tools. “Where’s Visual Studio? Where’s C++ Builder? Heck, Notepad would be nice.” These folks are looking all around for an IDE, or Integrated Development Environment. What they don’t realize is that UNIX is an Integrated Development Environment. You can’t get around the fact that this environment was made for geeks, by geeks. That means a lot of the programs that seem so clunky and awkward to the Windows person are, in fact, intended to work together to make development easier. Okay, so they aren’t all pointy-clicky and pretty, but that’s because pointy-clicky and pretty aren’t as important to these particular folks.
Jul 11, 2004 (Updated Jul 11, 2004)
There are several different approaches to programming, but the one that is easiest for me to grasp is imperative programming. The imperative approach allows you to tell the computer exactly what you want it to do and how you want it done. The best analogy I can think of is a cooking recipe. You have a list of ingredients and a specific set of instructions to follow. Veer from the recipe and you may not be happy with the results. Veer too far from the recipe and your house could burn down.
Jul 11, 2004
Jun 5, 2004 (Updated Jul 11, 2009)
Mar 12, 2004 (Updated Jul 11, 2009)
PHP is great. It is easy to learn and easy to use. Of course, it is also easy to make a project that is so amazingly baroque that mere humans have no chance of ever editing it. This is a trait that PHP shares with one of its biggest rivals, Perl. It can be funny to listen to an argument between PHP and Perl folks about why their favorite is the best and the other guy is the worst. The other guy is always “unstructured and unsuitable for real projects”, while the favorite is “fast and expressive”.
Mar 10, 2004 (Updated Jul 11, 2009)As much as I admire the clever braintwistings of FreeRide and the many other excellent projects that are out there, I must admit that Web programming is what I know best. And Web programming is what this section is about, from the Ruby side of things. I will take a peek at CGI programming, Embedded Ruby, setting up servers, and anything else I can think of that will make it easier for you to use Ruby as a major component of developing your Web applications.
Mar 10, 2004 (Updated Jul 11, 2009)
This article is intended to provide a casual introduction the CGI programming with the Ruby language. You won’t be an expert when you are done, but you will certainly be ready to explore more on your own, and maybe delve into becoming a Ruby/CGI expert.