Re: Language Oriented Programming
- From: "Isaac Gouy" <igouy@xxxxxxxxx>
- Date: 2 Aug 2005 13:26:14 -0700
Laurent Bossavit wrote:
> Thomas,
>
> > The next paradigm in programming should be modeled after how humans deal
> > with procedure and exceptions, and learn from it.
>
> Definitely a profound idea. I'm far from sure that we're anywhere near
> ready for that - we're encumbered by ideas about cognition and computing
> that make it difficult to even think of stating the problem that way.
>
> > Our company is experiencing a growth spurt and investors are
> > requiring written policies and procedures. We were amazed at
> > how many "procedures" were being performed informally. How
> > did we know how to do that?
>
> I'd suggest asking another question - *why* were you so surprised ? What
> were you expecting ? :)
Indeed.
> > The lesson to get from this is HUMANS are incredibly flexible and
> > adaptable, and can respond in real-time to change.
Without being incredibly flexible and adaptable and responding in
real-time to change - I wouldn't last a minute driving on US101 ;-)
> Not just humans - so do many other systems geared to survival, or at
> least stability. Stable systems show equifinality - they get to the same
> end state irrespective of starting conditions (or perturbations) within
> some range of tolerance. Species in an ecosystem are intricately
> interdependent, but most ecosystems can afford to lose one species.
>
> The software systems we're able to design also show interdependence, but
> when one module fails (even a small one) typically the whole thing
> fails. The famous Ariane crash is a good example of this fragility; the
> bug that was the ultimate cause of the crash had caused a fault that was
> entirely irrelevant, at the time it occurred, to keeping the rocket in
> the air. A more proximate cause of the crash was that the system
> interpreted an error message as if it had been a command to the
> boosters.
Seems that you are picking and choosing the cases to suit your
conclusion. Ecosystems can afford to lose one species - except when
they can't and the whole thing unravels (aka fragile ecosystem). When
one module fails (even a small one) typically the whole thing continues
on as though nothing happened (aka log the error).
Ariane is a reminder that "accidents usually have many necessary causal
factors, and if you eliminate any single one of them, the accident
would not have happened".
http://sunnyday.mit.edu/accidents/Ariane5accidentreport.html
http://www.rvs.uni-bielefeld.de/publications/Reports/ariane.html
> Think about it. That's a bit like a car driver hearing someone sneeze...
> But rather than disregard the "utterance" as irrelevant, the driver is
> compelled to assing meaning to it.
This silly example isn't anything like the Arianne accident, but let's
make it slightly less silly - That's a bit like a car driver hearing a
front passenger shriek "Oh no!", distractedly turning to look at the
passenger, and crashing into the slowing traffic in front of them.
There are situations in which the "Oh no!" may be relevant, but they
don't justify looking away from the road.
> Arbitrarily, the driver decides it
> means "turn right all the way". As errors go, it's totally bizarre. And
> yet so many systems "designed" under the prevailing assumptions as to
> what constitutes "design" exhibit this kind of behaviour, this mix of
> awesome intelligence and utter stupidity. (I'm reminded of the quality
> Doug Hofstadter calls "Sphexishness".)
>
> Laurent
> http://bossavit.com/thoughts/
.
- Follow-Ups:
- Re: Language Oriented Programming
- From: Laurent Bossavit
- Re: Language Oriented Programming
- References:
- Re: Language Oriented Programming
- From: Thomas Gagne
- Re: Language Oriented Programming
- From: Laurent Bossavit
- Re: Language Oriented Programming
- Prev by Date: Re: Test first as specification
- Next by Date: Re: Language Oriented Programming
- Previous by thread: Re: Language Oriented Programming
- Next by thread: Re: Language Oriented Programming
- Index(es):
Relevant Pages
|