Ir al contenido principal

Ralsina.Me — El sitio web de Roberto Alsina

Forgotten Language: Jorf could have been Python (or Ruby)

A long time ago, there was no In­ter­net.

Ok, there was an in­ter­net, but I lived out­side of it. It was 1992 or 1993, and I on­ly saw my first web­page and send my first email in 1995. And I was per­haps the third per­son to have an ac­count on a per­ma­nent­ly in­ter­net-­con­nect­ed box in a 150 km ra­dius.

But that did­n't mean I had no ac­cess to in­ter­net stuff! What I did was buy CDs con­tain­ing mir­rors of repos­i­to­ries like Sim­ (it was a sin­gle CD, too!) and in there you could find hun­dreds of pro­gram­s.

Most of them share­ware, most of them crap, but ev­ery once in a while, there was some­thing cool, like DJGPP (a whole gcc suite for DOS! A re­al C com­pil­er! For Free!)

At the time, I had a side job writ­ing da­ta en­try soft­ware for sta­tis­tics stu­dents. They were sim­ple pro­grams that showed a for­m, where da­ta was load­ed, then it did some sim­ple ma­nip­u­la­tions of the da­ta.

The nat­u­ral lan­guage for that was some­thing like Clip­per or DBase, but I did­n't have ac­cess to them (or a way to learn it. Re­mem­ber, no In­ter­net).

On one of those Sim­tel CDs I found Jor­f. (Josephine's Recipe Fil­er). It was a OO lan­guage, with an in­ter­preter for DOS or Win­dows, and it sup­port­ed stuff that was re­al­ly ad­vanced for the time, and it made my cod­ing a lot sim­pler.

Out of nos­tal­gy, I down­load­ed a copy (yes, it is still there), and ran it in Dos­BOX (yes, it still work­s), to check if it was as good as I re­mem­bered.

You know what? It is.

In fac­t, if it had come out 2 or three years lat­er, and as free soft­ware in­stead of share­ware... I think it would have been big.

Here are some high­lights og the lan­guage:

  • OOP

  • Has in­­te­­grat­ed win­­dow­ing tool­k­it (for DOS and Win­­dows)

  • It had an in­­ter­ac­­tive hy­per­­tex­t/win­­dow­ing tu­­to­ri­al writ­ten in it­­self. In 1993.

  • It looks like a cousin of Python. A freaky cous­ing, though.

    1. Com­­­ments start with |

    2. Strings lim­it­ed with sin­­­gle or dou­ble quotes

    3. Au­­­to­­­mat­ic type con­ver­­­sions

    4. In­­­ten­­­ta­­­tion con­trols flow :-)

    5. No de­­­clared da­­­ta types

    6. In­­­te­­­grat­ed ed­i­­­tor and de­bug­ger

Sam­ple Hel­lo World:

  Msg:Add ("Quick Demonstration","Ok")
    Sure you can say "Hello World" in one line of
    C code. But how many punctuation characters
    are required to display a dialog box like this?
  Return (Ok)

That piece of code showed a win­dow with the mes­sage in it, and a Ok but­ton.

The funky thing is: in the tu­to­ri­al, you saw the in­te­grat­ed ed­i­tor open, and the text of the ex­am­ple start to ap­pear, and then it ran.

That looked like mag­ic at the time :-)

The tool­kit sup­port­ed ra­dio but­ton­s, check­box­es, text en­tries, all the ba­sic­s, and it was a thou­sand times eas­i­er than what Tur­bo Pas­cal or Tur­bo C guys bat­tled with at the time.

The au­thor was Way­land Brun­s. He lived, in 1993, in Colton, Ore­gon.

He lat­er seems to have be­come CTO of a com­pa­ny that de­signs sync soft­ware for Gold­mine, Lo­tus and oth­er such things.

So, he be­came a suit ;-). How­ev­er, he was once a guy that wrote, in his soft­ware's man­u­al, things like:

JORF Com­pa­ny is just me, Way­land Brun­s. I have been work­ing on JORF for six years, and ran out of mon­ey three years ago.


JOR­F(R) is a new com­put­er lan­guage. JORF was cre­at­ed by a Grun­t-pro­gram­mer frus­trat­ed by low lev­el math based com­put­er lan­guages that are in­ap­propi­ate for busi­ness da­ta pro­cess­ing.

And you know what? It was the right idea. If he start­ed Jorf in 1987, that means he start­ed it around the same time Perl 1.0, (and the syn­tax is much nicer ;-). He start­ed it around the same time Gui­do start­ed Python.

Here's a toast to JOR­F, which could have been Per­l, or Python, or Ru­by. But was not.

Dewd / 2006-04-04 04:52:

I am creating something similar in Ruby, but which should support any GUI (includng web), which has a custom bind for it. As Ruby as lots of bindings for GUIs, I expect a lot of fun with it.

My current equivalent for what you have just shown is:

require 'cgr/cgr'


w.title = 'Quick Demonstration'

w.hpack button('Ok'){ quit }


I don't have plans of open sourcing it yet because I'm very busy creating lots of supporting tools, but at least I hope to be able to catch up with old technologies like that. :-)

Very interesting. Thanks.

Russell Campbell / 2008-02-09 18:23:

Yeah, I ran into JORF way back in the day. Maybe I saw an article somewhere or maybe I just stumbled upon it. It was cool, but I was so busy with work (programming using FoxPro and later Visual FoxPro) that I couldn't devote any time to it. I still think about it today, however, as I happened to today. Wasn't Josephine a goat? I wish he'd been able to keep it going, but it sounds like he had success in other areas.

Don Juan de Collea / 2009-10-15 01:42:

I just found this. If you read it. I used the old goat when it first started. I belonged to the Shareware Library and got a copy of this. It was light years ahead of time. Nice to see someone else remembers how easy this was. Thanks.

Roberto Alsina / 2009-10-15 03:52:

@don juan indeed!

I got email from the JORF author a few years back about this article, I should post it someday :-)

guest / 2010-07-24 23:45:

i have occasionally met the jorf distribution on simtel and downloaded it to play and investigate a little ;) (as i'm interested in old age languages and technologies, especially MSDOS-related). So the IDE behaves quite strange, I can't load any prgram into it except help system. If there something I don't know or it's just a corrupted distrib? Could the author help me with this? thanks!

Roberto Alsina / 2010-07-25 00:44:

well, it used to work around 1994 :-D

I had an email from the author but I seem to have misplaced it. He shouldn't be that hard to find, though.

guest / 2010-07-25 14:00:

But have you ever dealt with Jorf IDE? M.b. you could explain a little about it to me?

Roberto Alsina / 2010-07-25 16:03:

I just downloaded it now from simtel and after running install.bat it seems to work, at least the ide starts and I can write in it. But I am not going to try giving tech support about it, you know :-)

guest / 2010-07-25 17:41:

well thank you anyway, at least I've learned that my distrib is incomplete

Roberto Alsina / 2010-07-25 17:50:

I got the one I tested from and it was three zips, if that helps.

Roberto Alsina / 2015-10-13 18:00:

JORF on a bowser!

hrzafer / 2015-10-14 10:19:

Really nice story, thanks.

CptDeadBones / 2015-10-16 00:03:

There are several of reasons JORF and many other languages at the time didn't make it. Thanks for bringing back some old memories.

Contents © 2000-2024 Roberto Alsina