|
|
nemesis wrote:
> Darren New <dne### [at] sanrrcom> wrote:
>> Personally, I'm looking into Erlang right now... the "kernel" and "stdlib"
>> documents are together 800 pages (something like 60 pages of one-line
>> descriptions for routines in Kernel), and all the stuff in between is
>> just huge.
>>
>> Contrast with C#, where each library is pretty well distinct, for the
>> most part. You can read about the regexp library without even knowing
>> about the existence of the dynamic-code-loading library.
>
> Why is it any different with the Erlang library?
Look at anything other than the stdlib module. I'm still wading thru
kernel, but stuff like understanding the supervisor model, or the
release application, or the mnesia stuff, requires a whole bunch of
background. (Not that it's hard to find the background. It's just
there's a whole lot of it.)
C# probably has a lot of similar stuff, like when you're doing code
generation and such. Understanding "assemblies" for example takes a lot
of background, but doing something with assemblies that needs that
understanding that stuff is unusual rather than step one.
In other words, I can't imagine why you'd want to use Erlang for a
system other than a system that takes advantage of all the difficult
stuff, while I can easily imagine using C# to do nothing more than a bit
of simple XML parsing or some file management sort of thing.
It's entirely possible I'm reading Erlang docs in the wrong order. :-)
I'm still trying to figure out where the parser is described. Various
routines seem to imply you can add your own parsing to the language
("behaviors" and "records" come to mind), as well as manipulating
parse-trees, and I'm curious to see what that's all about.
> Perhaps what bothered you is that the unmaintained docs are kept in PDF files
> without links rather than a cross-referenced tree-based Windows Help file?
No, they have fine cross-references. It's just hard to know where to
start. In retrospect, starting with kernel and stdlib is probably best,
but I figured that out by reading the part in the release management app
that said you had to include those in every release. :-)
>> I think for anything particularly useful, you're going to have big
>> libraries anyway.
>
> I didn't say otherwise. I said .NET is closed and non-standardized and C#
> without it is like bread and no butter -- well, much worse actually...
Yeah. And Erlang without the standard libraries (including gen_server,
sasl, etc) isn't especially useful either.
> Actually, the thing that p*** me off about Java libs or .NET or even Python etc
> is that they're all just a bunch of redundant -- but perhaps a bit more
> convenient -- wrappers to existing OS functionality.
I would disagree. Certainly a large part of what you might use in some
types of programs is like that. But if you're writing an ASP.NET
program, most of the stuff you're doing has zero to do with the OS.
Indeed, for that stuff, I understand that the executables are directly
portable between MS's .NET and Mono.
> In the case of Java or Python at least, this leads to cross-platform ease.
Yeah, right. Let me know when you have cross-JVM ease, let alone
cross-platform ease, with Java.
--
Darren New / San Diego, CA, USA (PST)
"That's pretty. Where's that?"
"It's the Age of Channelwood."
"We should go there on vacation some time."
Post a reply to this message
|
|