[erlang-questions] Is there a good source for documentation on BEAM?
Fri Jun 1 09:31:13 CEST 2012
Joe writes: "... you fix the final bug and then realize that it was
all wrong and needs a total rewrite, and you start the rewrite the day
before delivery ...."
A friend of mine, former coder who went on to manage coders, once met
me for a beer and moaned that he'd spent the day "fighting a sudden
outbreak of Truth and Beauty." ;-)
This is actually an advantage of generating as much of your
implementation as possible from your documentation (as ROK suggests
above): it gets you more of a Separation of Concerns between where you
want your Truth (the spec) and where you need the Beauty (the code.)
With ths point in mind, I started
If Semantic Mediawiki isn't powerful enough to generate at least the
*makings* of a VM implementation from a rigorous (but still reasonably
human-readable spec), I don't know what is.
The above main page is, of course, wrong. In almost every possible
way. But anybody can help out in fixing it ....
On Fri, Jun 1, 2012 at 4:03 PM, Joe Armstrong <> wrote:
> On Wed, May 30, 2012 at 11:39 PM, james <> wrote:
>>> If they aren't written down, they WILL be forgotten
>>> sooner or later.
>> I would also like to suggest that the act of writing down a design forces a
>> degree of rigour that is hard to achieve otherwise. I have several times
>> thought that I had considered a design from 'every angle', only to find that
>> when I *write it down*, some of the angles were imperial and some were
>> metric, and some were just smoke and mirrors.
> I agree 100% - when I get *really stuck* - I write out in clear
> English what I want my program to do.
> I often start programming without a clear idea of what my program is to do - I
> "think" I have a clear idea but as the program evolves I find that the
> original idea was
> unclear. Writing down in another language (ie English, instead of
> Erlang or C or whatever) forces
> a cognitive shift in my brain - I suspect that actually *different*
> parts of the brain are involved.
> I can also feel the ideas moving around in my head - feel is too
> strong a word here.
> There is also another strange phenomena - until a program is
> completed, the problem
> is not really solved. But as soon as the program is completed in its
> entirety, a strange thing
> happens - then, and not sooner, I realise that a better solution was possible.
> Why is this? - I suspect a different part of the brain is involved.
> Some part of the brain
> says "move on problem completed" and as soon as that happens the "move
> on" part of the brain
> realises that the solution you have just arrived at was flawed - so
> throw it all away and start again.
> Knuth, he of the wise ways, says this rewriting process should be
> repeated seven times.
> In organisations this causes problems. Just about when the system is
> to be delivered
> you fix the final bug and then realize that it was
> all wrong and needs a total rewrite, and you start the rewrite the day
> before delivery ...
> I have never met a project manager on the planet who understands this
> (Project mangers are from Venus,
> Programmers are from Mars)
> I also believe in working in a distraction-free environment (no phone,
> email, twitters etc) you have to
> listen very carefully to catch the small fleeting thoughts in your
> brain. When I solve sudoku I
> get instant flashes where I see where numbers are to be placed - but
> these are fleeting and easy to miss.
> I suspect my right-brain instantly sees a solution and tries to tell
> my left-brain, but since I wasn't listening I missed it.
> Programming is actually a form of "applied thinking" where you can
> actually test the results of the
> thought process. Since all the real work takes place inside the brain,
> a brain-friendly environment is
> essential. I once worked in an open-plan office, after a while I
> noticed my (programmer) productivity
> dropped to zero and that all my programs were written at home.
> I could wax on but i'm supposed to be writing a book, but have been
> distracted by the Erlang mailing
> list ...
>> When something is written down, the handwaving stops and the engineering
> erlang-questions mailing list
More information about the erlang-questions