Comments on the www.erlang.org course.
Joe Armstrong
joe@REDACTED
Thu Feb 11 13:47:40 CET 1999
Hi Ben,
Thanks a lot, I fixed up the errors that you observed.
See below (and on the updated web site).
> I've recently read thru the course that get's top billing at
> www.erlang.org. Here are a few typos and questions. - ben
Thanks - we always like complements :-)
> ---
>
> ** Sequential Programming
> typo: This lesson is missing one last 'back to top' button.
fixed
> question: What's the unicode, utf-8 etc. etc. story today.
In the spec. Not yet implemented.
> question: The string is a list implies that strings are not very dense?
They take 8 bytes/character (is that what you meant?) Binaries
take 1 byte/character (asymptotically) - the overhead on small binaries
is << ask klacke, or tony >>
> question: Atoms are interned in a per node pool and never reclaimed, I presume.
Not specified. The current beam/jam does not garb the atom table.
>
> *** Concurrent Programming
>
> **** Client Server Model
> typo: The code for request/1 uses the variable R rather than Rep by mistake.
Fixed
>
> *** Error Handling
>
> **** Processes can trap exit signals.
> drawo: The illustration ought to show P3 linked to P2 not sending a message to P2.
>
Fixed (I *lost* the .fig file so this fix took a looooooooong time :-()
> *** Advanced Topics
> **** References
> typo: The first sentence is not gramatical.
> question: Is this the only use of the term "symbol", and why?
Fixed - major! rewrite (panic on - the standardisation committee
doesn't really know what a reference is! - what happens if you store a
reference in a file and read the file a million years later? - what
happens to copies of references - what happens in parallel universes -
what happens in the year 2000 - panic off)
>
> *** Obtaining System Information
> Typo: "want to do this?" not "what to do this?"
>
Fixed
> ** History
> "Conclusion: The language must contain primitives for concurrency
> and error recovery, and the execution model must not have back-tracking.
> (Rules out Lisp and Prolog.)"
> Since Lisp does not have backtracking I guess it's time to backtrace
> and redo the entire project, eh?
>
Not fixed. Lisp was ruled out 'cos of lack of
concurrency not backtracking!
>
> Misc:
> At this point in my climbing up the learning curve I was surprised
> that the application module and the tangle around load, path, etc.
> were not covered more.
Ummm - that stuff (paths, loading etc.) is a "local issue" - the
course is (mostly) generic - although the boundary is not hard and fast.
>
> The error handling section was very useful. A terse statement of
> the exact coupling between exceptions, exit signals, and the
> error_handler would be nice.
The precise statement is not terse! - see the book for the exact
> coupling.
You all have a very nice system here. - ben
Thanks,
/Joe
--
Joe Armstrong Computer Science Laboratory +46 8 719 9452
AT2/ETX/DN/SU Ericsson Telecom SE-126 25 Stockholm Sweden
joe@REDACTED http://www.ericsson.se/cslab/~joe
More information about the erlang-questions
mailing list