An implementation of Jef Raskin's FLOW computer language and programming environment (easy chairs not included).
README.md edited online with Bitbucket
af31a9f0e0bc — Jos'h Fuller 7 years ago
Adding screenshot and (slightly) updating README.
README.md edited online with Bitbucket

heads

tip
browse log

clone

read-only
https://hg.sr.ht/~oofoe/flow
read/write
ssh://hg@hg.sr.ht/~oofoe/flow

#FLOW

#In the Beginning...

the greate GOD ELECTRONA (herinafter called GE) created the computer. And the mind of the computer was without form and was void. And GE said, let the computer be given a language so that it can perform useful work. And on this seventh day GE said, I guess that's enough fooling around; I need a rest. And He did.

And it came to pass, as the computer journeyed from the East, that men, fooling around as had GE, gave to the computer other languages, so that the problem of learning became confounded, and most men couldn't understand how to program the computer.

And, once upon another time, other men came to take a turn at the language game and said, there's too many rules and things; especially things. And so they decided to make anothyer language with less rules. And they saw that men became confused with too many things to put in and play with; so they said, there are only two things allowed. And one of these will be a single character thing and the other will be a counting thing.

And they felt this was good.

And the men saw that much confusion came from the lack of typing skills. And they decided that if the typing started right, the computer could finish it, and if the typing was wrong, the computer could erase it. And so it went.

And the men said, enough of playing GE, let's go have a beer.

And they did.

#What is this?

This is a version of Jef Raskin's FLOW teaching language, implemented in Lisp.

Program screenshot.

As a language, it's not very interesting -- it's purposely stripped to the very essential features of a computer language to make it easier for students to grasp and work with -- I'm not even sure it could be considered Turing complete.

However...

It's very interesting from a user interface perspective. If this isn't the first time time Raskin started thinking about making computers easier to use, it seems to be the first time he did anything about it. Also, the FLOW paper is the earliest description I've found of the feature that we now call "autocomplete".

#How do I run it?

This is written in NewLisp 10.6. It uses Java for the GUI, so you will have to have that installed if you want the full "experience".

#Who's responsible for this?

Mr. Jef Raskin and associates did the original work and wrote the paper. Sample program by Lyra Foret. Original papers and documents for research provided by the Stanford University Library, much thanks to Nan Mehan of Special Collections. Copyright on any original documentation reproduced here is probably owned by Mr. Aza Raskin, but I can't get in touch with him without creating a Twitter account... He is invited to file an issue if he has any problems with this. The implementation available here is a completely original work by Jos'h Fuller.

#Sources

Programming Languages for the Humanities Jeffrey F. Raskin Computers and the Humanities Vol. 5, No. 3 (Jan., 1971) , pp. 155-158 Published by: Springer

FLOW: A Teaching Language for Computer Programming in the Humanities Jef Raskin Computers and the Humanities Vol. 8, No. 4 (Jul., 1974) , pp. 231-237 Published by: Springer