Posts Tagged ‘rebol’

Nenad Rakocevic for O’Reilly 2013 Open Source Awards

Thursday, May 16th, 2013

I realize that it is probably a long shot for O’Reilly to recognize a “fringe” language project as deserving of recognition in their open source awards. But I (and the rest of you!) would be remiss not to at least nominate Nenad Rakocevic a.k.a. @DocKimbel. He has spent two years of diligent work and organizing on Red…and that’s not to mention the broad open-source contributions to the Rebol community over the years!

Here’s the link where you can enter your nomination:

OSCON 2013 Nomination Form

And here’s what I wrote:

The closed-source Rebol interpreted language lived in the shadows for decades. Designed by one of the fathers of AmigaOS, it has impressed many…and is frequently cited by Douglas Crockford as his inspiration for creating JSON.

Nenad Rakocevic was one of the most prolific and high profile of open-source Rebol programmers. While Rebol and many of its clients were creating closed-source applications, he was BSD-licensing major projects like his web server Cheyenne, the Rebol MySQL driver, and the CureCode bug database.

In a classic example of how closed-source methods can hold back remarkable ideas, Rebol Technologies stalled development. So Nenad broke away with the idea of creating a “full stack” language based on Rebol called RED. But instead of merely having the same range of applicability as Ruby, Python, or other interpreted languages…his plan for Red was to apply the methods to create compiled (or mostly-compiled) code. This could just as easily be used for device drivers as high-level programming.

Nenad’s progress has been prolific over two years. Most suspect his speed and community inclusivity was the trigger that caused Rebol’s creator to open-source his own project in December 2012. Thanks to his efforts, the Rebol community has *two* strong codebases to build from going forward.

Red (and Rebol) are currently in the margins of the technology world. But it would impress me if O’Reilly recognized the efforts of someone working diligently to lead longstanding closed-source tools into the light, as well as eliminate complexity (rather than continue to build upon pillars of salt and sand.)

Read more at: http://red-lang.org

Logo Design for the Open Source Rebol Project

Friday, January 11th, 2013

After decades of pondering and implementation, the Rebol programming language quietly went open source on December 12th, 2012 (12-12-12). The language’s chief designer, Carl Sassenrath (of AmigaOS fame), had this to say:

You probably thought the source release would never happen? Am I right?

Well, it’s there now in github. This is preliminary. Once I know some of you have built it successfully, I’ll make a more public announcement and add a tarball for download from rebol.com.

I’ll check in here for several minutes every night to respond to any questions.

Let’s see what happens… Who will be the first to port it to Android?

Within 8 days, German developers at Saphirion had made an experimental Android port. I myself made the minor patch to get Rebol building on HaikuOS. Instructions then came down the line for building on Raspberry Pi, Beagleboard, and Pandaboard.

As people began absorbing the good and bad of the first-ever-sighting of the source code for Rebol, wheels began to turn. By request, one of my pet projects (the redesign of the Rebol logo) was thawed out of its 3-year hibernation.

I won’t repeat the long-winded-argument I made years ago for Rebol Technologies replacing its old icon:

Historic Rebol Icon, white R in a Red Square with Purple Target

…with a new icon that I created based on Rebol’s heritage, as well as the notion of bracketed series of words (as in [o]):

New Rebol Icon Suggesting [o]

Rather, I’ll just talk about the issues involved in staging a “design intervention”. of this nature…

(more…)

Initial Build of Rebol for the Haiku Operating System

Friday, December 28th, 2012

For those not in the know: Haiku OS is a binary-compatible open source reimplementation of the “Be” operating system. As with the Amiga community, Haiku users are driven partially by nostalgia…but also by an aesthetic of “small is beautiful”. As with the Amiga community’s anger that history took a detour by endorsing the PC architecture, the Haiku community probably in large part feels that Apple missed the boat by going with a traditional architecture of OS/X rather than buying Be.

Anyway kids, I hear it was a holiday or something. Instead of LumpOfCoal.exe I bring you a Rebol binary that runs on Haiku. (Well, I didn’t address terminal issues like cursor keys doing a proper command history or whatever…I just got it started as a basic POSIX build, looking at little details that despite their littleness can be a bit of a block.) You can download it from the community builds site at rebolsource:

http://rebolsource.net

More work is needed, and a proper binary would probably use a binding other than POSIX, which the source is designed to permit. But the question that people don’t know to ask is “can it be used to bootstrap”? In short: Rebol’s cross-compilation strategy is to use a Rebol executable to generate a bunch of per-platform ANSI C which is compiled in with the rest of the C sources. So really all you need is a Rebol executable (on any platform) and a passable C compiler.

I started with a Debian build and then put in a thumbtack here and there to get a HaikuOS build. And indeed, you can bootstrap. It’s this easy…

Install HaikuOS in your VirtualBox or what-have-you. I used R1 alpha 4.1, which is the latest at the time of writing. Once you have it, follow the instructions in this video…except get your Haiku binary from rebolsource and not my server. (I made the video before the changes had been accepted to the trunk.)

The video was intended as a draft that I made to solicit feedback. But I haven’t gotten around to redoing it yet, so I’m going ahead and pushing this blog entry out in the meantime.

A Modest Proposal for a Rebol Code Golf Dialect

Friday, January 8th, 2010

UPDATE: I’ve uploaded a preliminary proof-of-concept Rebmu implementation to GitHub. See http://hostilefork.com/rebmu/ for details.


StackOverflow has a tag for so-called “Code Golf”, which has the goal of attempting to perform a programming task with a program that has a minimum number of ASCII characters.

There are several loopholes:

  1. You can obviously define a language which specifically performs only the one task, and uses a single-character program to do it (e.g. if the task is to print “Hello World”, you can make a fictitious language in which the single character program h will do it)
  2. You can compress your program into a form where it is no longer the sort of thing a human can reasonably read or write (e.g. the hexadecimal representation of assembled machine code)

But a real Code Golf language needs to be Turing complete. Furthermore, I feel that you should be able to give an arbitrary challenge to a programmer they could write a working program without machine assistance. It should also be feasible to make minor adjustments to the program’s behavior without using some kind of tool. My opinion is that in this respect, Rebol has potential to be the most impressive language for Code Golf ever created.

However, Rebol has striven for a verbose English-like wording scheme. So out of the box, its ability to compete is hampered against less ideal languages that have been purposefully shortened for this purpose (like GolfScript) Yet I began to wonder if the language could be configured in a trivial way that preserved its basic character (so it still passed the language parser) but that made it more terse.

I’ve decided to call my idea “Rebmu” (REBμ) the Microsocopic Rebol Dialect for solving code golf challenges! You can find a proof-of-concept source file on GitHub which has some documentation, but this post goes into some detail as well…

http://github.com/hostilefork/Rebmu/blob/master/rebmu.r

(more…)

Proving There are Only Six Dudeney Numbers

Thursday, December 24th, 2009

I came across an article in Wikipedia about Dudeney numbers. These are numbers whose digit sum add up to their cube root:

    1 =  1 x  1 x  1   ;   1 = 1
  512 =  8 x  8 x  8   ;   8 = 5 + 1 + 2
 4913 = 17 x 17 x 17   ;  17 = 4 + 9 + 1 + 3
 5832 = 18 x 18 x 18   ;  18 = 5 + 8 + 3 + 2
17576 = 26 x 26 x 26   ;  26 = 1 + 7 + 5 + 7 + 6
19683 = 27 x 27 x 27   ;  27 = 1 + 9 + 6 + 8 + 3

The wiki page went on to proclaim that those are the only six such numbers. Somebody on the talk page asked where the proof was.

I poked on Google and didn’t find anything, so I wondered if I could just prove it myself. Here’s what I came up with off the cuff. Perhaps others would find it interesting.

(more…)


Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported