[Haskell-cafe] OS design & FP aesthetics

Creighton Hogg wchogg at gmail.com
Mon Jun 18 17:57:34 EDT 2007

On 6/18/07, Andrew Coppin <andrewcoppin at btinternet.com> wrote:
> Creighton Hogg wrote:
> >
> >     There are lots of things to like about Linux. It doesn't cost money.
> >     It's fast. It's reliable. It's flexible. It's secure.
> >
> >
> > Okay, I'm not sure if I'd agree with the reliable & secure points.  I
> > mean, relative to what could be done.  I'm a rank amateur when it
> > comes to OS work but when I've looked at recent papers Linux really
> > isn't that cutting edge.  I mean, it may be reliable in comparison to
> > Windows 98 & has less known exploits than any Windows system, but in
> > terms of how good it *could* be I think there's an awful lot of room
> > for growth.
> Isn't there a lot of room for improvement in *any* product?

Well, I'm not just talking about improvement.  I'm talking about things like
capabilities, self-healing kernels, separation kernels, exo kernels, things
that may have serious advantages but can't necessarily be strapped on to a
preexisting kernel such as Linux.

> Okay, but these don't seem to really be design flaws so much as the
> > inevitable results of age and the need for backwards compatibility.
> > I'm looking more for technical problems that you would want to see
> > fixed in our magical UberOS.
> Technically, both Windoze and Linux "work". It would just be nice to
> have an OS with a coherent design, that's all. Nothing revolutionary
> (after all, it's an OS), just something done properly.
> (Also, have you noticed that no large Haskell applications exist? It's
> very hard to convince people that Haskell is not a "toy" language when
> no large applications exist. Building an entire *OS* with it would
> rather satisfy that requirement...!)

Well, I imagine that there are large applications being used at places like
Galois or Credit Suisse that are just proprietary.  As for open source, I
guess the largest application is probably GHC itself.

>     (Have you ever programmed in C? You can certainly see where Unix gets
> >     its features from - terse, cryptic and messy.)
> >
> >
> > This is another thing we're just going to disagree on.  I think C++ is
> > a pretty messy language, but feel that straight up C is rather simple
> > and elegant.  I had only used C++ before, but a friend rather easily
> > convinced me that C is in fact a very sexy language when used in its
> > intended design space.
> To me, C is the pinacle of everything that is wrong with computer
> programming. How does the saying go? "C combines the power and
> flexibility of machine code with the ease of use of machine code."
> (Which isn't quite fair - machine code is easier to read than C.)

At this point I can only say that we disagree and bow out of this tangent.

For some reason, there is this perverse correlation... There are
> wonderful, beautiful languages like Haskell, that nobody uses and that
> you can't do anything practical with. And then there are ugly, complex,
> messy, flabby languages like C, C++, Perl, VisualBasic, etc. which are
> what everybody uses, and which have the power to actually do things. As
> somebody who's spent their entire life obsessively programming
> computers, this state of affairs makes me really sad. I really wish to
> God there was a language like Haskell that was useable in the real
> world. :-(
> >     (I did seriously investigate the task once. Indeed, I got as far as
> >     writing a bootloader. It worked too!)
> >
> >
> > Would you mind sharing the code?  I'd be interested.
> Seriously - we're talking about 1 page of assembly. That's it. Write it
> to the boot sector of a floppy, reboot your PC and it says "Hello World"
> on the screen. That's the sum total of how far I got.

My apologies, I thought you meant you wrote a GRUB replacement in a
functional language.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20070618/8c8bb87f/attachment.htm

More information about the Haskell-Cafe mailing list