[Oberon] Oberon with strings, Eberon

Lars noreply at z505.com
Thu Mar 31 04:16:23 CEST 2016


On Fri, February 26, 2016 1:41 am, Douglas G. Danforth wrote:

>
> I was paid $3000 back in 1980 to write a Unix shell
> which I did in Pascal on a Terak machine which had pipes which I
> implemented.
>

How did you get past the 255 string limit limitation issue if your pipes
were bigger than 255 characters?  Use arrays of something? Did it have an
escape out of standard pascal's limitations? Did you combine multiple 255
length strings together to make room for more data? Or just not use 255
strings for the pipe data and use some other structure?

> I almost never process files of data and pass the output along
> to another process (pipe).  Why do you do so much of that?
>

Yet that's what a procedure in a program does: it takes data in, mucks
with it, then pumps data out (if it is a function)... or internally does
stuff with the data and returns nothing (procedure).

A procedure is very similar to a pipe. Yet I don't use pipes much myself,
but I can see people who deal with a lot of data using them.

Say you have a website log file that shows all your website visitors. You
want to take this log file and extract only the dates and IP addresses of
all visitors, and abandon all the other data.  Someone experienced with
piping would simply take the file, and send it to a filtering program that
chopped it up with some kind of regex or pattern match.

On the other hand you could write a long drawn out verbose oberon program
that would do the job too, by reading the file in to your oberon program,
modifying the data...

Unix sys admins would probably prefer a quick one off command line to
process the data quickly... probably AWK, maybe even a terse one liner at
the command and the data is done. Writing out a long drawn out oberon
program would be an interesting academic exercise, indeed... but a
sysadmin is limited by his time... so he writes a one liner command line
to process the data in one shot.

This may be a problem with oberon philosophy. When researching Oberon, Rob
Pike found that just having oberon available and nothing else (no other
programming tools) was very limiting, so he went on to develop plan 9,
which is based on oberon in some ways.

I'm not a huge fan of awk or one line regexes, but sometimes sysadmins are
limited by time and need to do stuff quick. A pipe might process a log
file in 10 seconds, while an oberon programmer spends 6 hours writing a
program that processes data, or maybe 1 and a half hours.


More information about the Oberon mailing list