Welcome to the Jungerl!

Luke Gorrie <>
Sat Feb 22 02:03:09 CET 2003

                There was once a programmer who worked
                 upon microprocessors. ``Look at how
                  well off I am here,'' he said to a
               mainframe programmer who came to visit,
                 ``I have my own operating system and
                file storage device. I do not have to
                 share my resources with anyone. The
                   software is self-consistent and
                easy-to-use. Why do you not quit your
                   present job and join me here?''

                The mainframe programmer then began to
                  describe his system to his friend,
                 saying ``The mainframe sits like an
               ancient sage meditating in the midst of
                 the data center. Its disk drives lie
                   end-to-end like a great ocean of
                    machinery. The software is as
                  multifaceted as a diamond, and as
                 convoluted as a primeval jungle. The
               programs, each unique, move through the
               system like a swift-flowing river. That
                   is why I am happy where I am.''

                  The microcomputer programmer, upon
                hearing this, fell silent. But the two
                programmers remained friends until the
                          end of their days.

                          -- The Tao of Programming [1]

Though I wasn't around in the mainframe days, there's something very
appealing about the idea of a completely shared computer: when you
write a program, or add a feature, everyone else has it
automatically. You'd just send a mail that "The 'make' program can now
do foo", and everyone could immediately update their makefiles to do
some foo. You'd improve things directly instead of sending patches,
always have the latest and greatest versions without the need to
download tarballs, have a large set of installed programs and
libraries that you can use, and perhaps get that joyous feeling of a
"smoothly running anarchy." Lots of things might break on occasion,
but a community of hackers can all fix them. This seems to be the type
of environment where, for example, Emacs grew from a few TECO macros
towards what it is today [2].

I think it all makes a nice picture, and would like try hacking Erlang
programs in this way. To this end, I've created a new sourceforge
project called the 'jungerl': "A Primeval Jungle of Erlang code". It
is quite simply a new CVS tree that I have added many of the existing
Erlang User Contributions to, and that anyone who wishes can have full
developer access on.

I'm using Stewart's Law of Retroaction [3], so I have already imported
a lot of User Contributions that I'm interested in - some by me, but
most by other people. I have also added every Erlang hacker's
sourceforge account that I could find with full administrator rights,
so they can in turn add anyone else who wants in. You can get into at

It's my hope that this Wiki-style common program repository will lead
to good things for the programs in it, and will give them better
open-source hacking infrastructure than one would bother to create for
them individually. I invite everyone to use and improve the programs
that are imported and to add any other programs that they want (see
the README for how.) We can use the Erlang Wiki to communicate about
additions and changes:

If I've stepped on anyone's (or everyone's) toes by doing something
with their program that they don't want, just let me know and I will
make things right :-)

That is as far as I have thought the whole thing through.

The programs I've imported so far are:

  enfs:   Mini NFSv2 server
  ermacs: Emacs-like editor
  slang:  S-Lang terminal driver (slightly extended version from Ermacs)
  lersp:  Mini scheme-like interepreter
  msc:    Miscellany (e.g. Tobbe's syslog client)
  rpc:    The SUNRPC library (by tony, scott @sendmail, martin, &co)
  tuntap: A linked-in driver for Linux TUN/TAP network devices (fun!)
  xmerl:  Ulf's famous XML parser
  xmlrpc: Jocke's XML-RPC library

I have completely left alone programs like Yaws that already have a
full development system established.

With these programs I have made a simple unified autoconf and Makefile
setup, which let me delete a large amount of mututally-redundant or
hard-coded makefile code across the various projects, and adds some
extra consistency and (hooks for) portability. In the process I have
somewhat changed the way some programs build, but I think the overall
effect of integration is good.

So far I have only built it on Linux and FreeBSD (using GNU make), so
there may be some 'configure'-hacking for other platforms.

If you want developer access, just add your sourceforge account name
to the Wiki page. If you already have access and you see names on that
page, please add them with administrator privileges.

The Jungerl README is attached.


[1]: http://www.canonical.org/~kragen/tao-of-programming.html
[2]: http://www.gnu.org/philosophy/stallman-kth.html
[3]: Stewart's Law of Retroaction: It is easier to get forgiveness
         than permission.

(How's *that* for a crackpot post, Klacke? :-))

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20030222/ac67d82d/attachment.ksh>

More information about the erlang-questions mailing list