|
![](/i/fill.gif) |
>> Right. So you're saying the fact that nobody has sat down and written a
>> comprehensive set of libraries makes the language "non-elegant" and
>> "poorly designed"?
>
> I did not say THAT.
>
> What I did say is that if nobody has sat down and written a
> comprehensive set of libraries, this prevents the lange from being a
> language that "solves everything" - and, consequentially, from
> qualifying as "a simpler, more elegant design that solves everything".
Haskell is an elegant, beautiful language. In the vast majority of
cases, it lets you write your application logic in a very concise,
reliable and maintainable way.
For a language to be /useful/, you need more than just the language. You
need libraries. You need a build system. You need packaging and
distribution. You need profiling and debugging tools. You need
documentation systems. And probably a number of other things too.
For the most part, Haskell lacks these. This does not change the fact
that the Haskell /language/ is elegant and beautiful.
I don't doubt that C# almost certainly has /far/ more plentiful
libraries. (As does Java, C++, C, Python, Ruby, or really /any/
programming language that mainstream programmers use.) That doesn't mean
that the design of the C# /language/ is clean or beautiful.
> What I also did imply is that if anybody would indeed sit down and write
> a comprehensive cover-all set of libraries, there would likely be quite
> a number of them that would be non-elegant to use
And why would that be the case?
> Right. But it has something to do with whether the language "solves
> everything" [for practical purposes].
I was referring only to the design of the language itself, not the
libraries that go with it, nor any of the various other tools required
to make a language generally useful. It's no secret that Haskell fails
spectacularly on that count.
> Can you easily model a state machine in Haskell? If not, then it doesn't
> solve everything.
This is trivial.
> Can you easily write a GUI in Haskell? If not, then it doesn't solve
> everything.
This could be made trivial, but currently it isn't supported
particularly well.
(E.g., writing a GTK application is fairly simple. Getting the GTK
libraries to work in the first place is not simple.)
> Can you easily write an OS kernel in Haskell? If not, then it doesn't
> solve everything.
This has been done at least once before.
Note also that there is now a project that lets you run the Haskell
runtime on bare metal (or rather, on the Xen virtualisation platform)
without an OS. Apparently this was developed as part of a commercial
system, so somebody is using it for real.
> As soon as you have libraries (or other language extensions) for all
> conceivable purposes, we'll talk again - about elegancy then.
Right, because how elegant a language is depends on how many libraries
it has. Oh, wait - no it doesn't.
Post a reply to this message
|
![](/i/fill.gif) |