Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion Lisp Celebrities and Computing History from Worse Is Better
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Antti Ylikoski  
View profile  
 More options Jul 31 2011, 11:14 am
Newsgroups: comp.lang.lisp
From: "Antti Ylikoski" <antti.yliko...@elisanet.fi>
Date: Sun, 31 Jul 2011 18:14:23 +0300
Local: Sun, Jul 31 2011 11:14 am
Subject: Re: Lisp Celebrities and Computing History from Worse Is Better

"Mark Tarver"  kirjoitti
viestissä:dde98629-fbfe-4e22-91ce-6377f7b4c...@k15g2000yqd.googlegroups.com...

On Jul 25, 12:50 pm, Xah Lee <xah...@gmail.com> wrote:

> might be of interest.

> 〈Lisp Celebrities and Computing History from Worse Is
> Better〉http://xahlee.org/comp/lisp_celebrities_worse_is_better.html

> --------------------------------------
> Lisp Celebrities and Computing History from Worse Is Better

> Xah Lee, 2011-07-24

> I just discovered the identies of 2 semi-fictional character in lisp
> lore.

> There's a infamous article, known as Worse is Better. Very popular in
> the 1990s, and still so among lisp circles. The article is:

> The Rise of “Worse is Better” (1991) By Richard P Gabriel. @
> dreamsongs.com

> In the article, there's this passage:

>     Two famous people, one from MIT and another from Berkeley (but
> working on Unix) once met to discuss operating system issues. The
> person from MIT was knowledgeable about ITS (the MIT AI Lab operating
> system) and had been reading the Unix sources. He was interested in
> how Unix solved the PC loser-ing problem. The PC loser-ing problem
> occurs when a user program invokes a system routine to perform a
> lengthy operation that might have significant state, such as IO
> buffers. If an interrupt occurs during the operation, the state of the
> user program must be saved. Because the invocation of the system
> routine is usually a single instruction, the PC of the user program
> does not adequately capture the state of the process. The system
> routine must either back out or press forward. The right thing is to
> back out and restore the user program PC to the instruction that
> invoked the system routine so that resumption of the user program
> after the interrupt, for example, re-enters the system routine. It is
> called PC loser-ing because the PC is being coerced into loser mode,
> where loser is the affectionate name for user at MIT.

>     The MIT guy did not see any code that handled this case and asked
> the New Jersey guy how the problem was handled. The New Jersey guy
> said that the Unix folks were aware of the problem, but the solution
> was for the system routine to always finish, but sometimes an error
> code would be returned that signaled that the system routine had
> failed to complete its action. A correct user program, then, had to
> check the error code to determine whether to simply try the system
> routine again. The MIT guy did not like this solution because it was
> not the right thing.

>     The New Jersey guy said that the Unix solution was right because
> the design philosophy of Unix was simplicity and that the right thing
> was too complex. Besides, programmers could easily insert this extra
> test and loop. The MIT guy pointed out that the implementation was
> simple but the interface to the functionality was complex. The New
> Jersey guy said that the right tradeoff has been selected in Unix --
> namely, implementation simplicity was more important than interface
> simplicity.

> I discovered, that the MIT guy is Daniel Weinreb, and the New Jersey
> guy is Bill Joy.

> I discovered this from Daniel's blog. The “Worse is Better” idea and
> the future of Lisp (2009-06-07) By Daniel Weinreb. @ Source
> danweinreb.org.

> The Worse Is Better is a characterization of software success. It is a
> seminal article, and in my opinion one of the best essay on the topic.
> See also: The Nature of the Unix Philosophy.

> When you look at computing history, many well-known figures had
> various connections. Daniel and Gabriel are both from the lisp circle.
> There are many blogs i've written in the past involving these
> programing celebrities from my diggings of computing history,
> especially involving lisp, emacs, unix. Following is a summary.

> • I do a lot provocative writings. Around 2000, one time Richard P
> Gabriel made some posts to comp.lang.lisp, and i criticized one of his
> post about software engineering. He politely asked what's my opinion.
> See: What and Why of Math. (this is the period when i was reading
> comp.lang.lisp mostly for Erik Naggum's posts. See: Death of a Troll —
> My Memory of Erik Naggum ◇ Why do I Rant In comp.lang.lisp? )

> • My review of Richard Gabriel's 1996 book. It's quite scathing. Book
> Review: Patterns of Software.

> • Sometimes in 2007, lisp cons cropped up again in comp.lang.lisp. I
> usually attack it to no ends. Daniel kindly asked what's my objection
> to lisp's cons. Here's my reply among other meandering rants on lisp's
> cons: Lisp's List Problem. See also: Programing Language: The Glory of
> Lisp's cons.

> • Bill Joy, is a founder of Sun Microsystems, and is the author of vi.
> (See: Emergency vi (vi tutorial)) In 2000, he wrote a popular essay
> titled “Why the future doesn't need us”. I wrote a blog about it:
> Futuristic Calamity.

> For how vi's keys began, in particular the H J K L keys for cursor
> movement, see: Keyboard Hardware's Influence on Keyboard Shortcut
> Design.

> In GNU Emacs Manual, it began thus:

>     Emacs is the extensible, customizable, self-documenting real-time
> display editor. This is the Sixteenth edition of the GNU Emacs Manual,
> updated for Emacs version 23.3.

> Wonder why it calls itself “real-time display editor”? Why “real-
> time”? Why “display”? And how vi's “modal” operation came to be? See
> bottom of: GNU Emacs and Xemacs Schism, by Ben Wing.

> • Both Daniel and Gabriel are emacs users, of course, and it is a
> major cause of RSI. Daniel has mentioned how emacs's keys began, to a
> article i posted in a newsgroup post. Search for “daniel” in: Why
> Emacs's Keyboard Shortcuts Are Painful.

> • In discussing how emacs keybinding came to be, Daniel mentioned Guy
> Steele (most famous for being the co-inventor of Scheme Lisp.). See:
> Guy Steele on Parallel Programing: Get rid of cons!.

> • Jamie W Zawinski (JWZ) is hired by Gabriel to work in his company
> Lucid Inc, and one of the product is a IDE based on emacs, which
> eventually became XEmacs when the company disbanded. It was JWZ who's
> responsible for spreading the article Worse Is Better. (Since the
> beginning of the web (~1994), the most popular website that hosted the
> “Worse Is Better” article is JWZ's website. Only till ~2007 that
> Gabriel started to have a website and hosted his own article.).

> Most of today's programers might have heard of Jamie, if you've heard
> one of them at all. He's the star back in Netscape days (1990s). He's
> one of the more provocative types and writes non-stop. There are
> plenty articles in mainstream media written about him. Richard
> Stallman, blames Jamie as the one who cause the emacs vs xemacs
> schism. Both Jamie and Stallman suffered severe RSI due to emacs.

>     Celebrity Programers with RSI (Repetitive Strain Injury)
>     Internet History, Netscape, Dot Com, Code Rush
>     GNU Emacs and Xemacs Schism, by Ben Wing

>  Xah

I haven't read Gabriel's book; but I was drawn to your remarks.  You
say Gabriel states

QUOTE
•Languages are accepted and evolve by a social process, not a
technical or technological one.
•Successful languages must have modest or minimal computer resource
requirements.
•Successful languages must have simple performance model.  (I think
means computational model)
•Successful languages must not require users have “mathematical
sophistication”.
UNQUOTE

And in criticism you write

QUOTE
By the second criterion, for example, C is good because it requires
little resource, while Lisp is bad because it requires large resource
(relatively). By criterion 3, it means that the mathematical model the
language is based must be simple. For example, C is the simplest
because it is close to assembly, while Prolog, Lisp, or Java have
complex performance models. By criterion 4, for example, Lisp is very
bad because it requires some mathematical sophistication (e.g. lambda
functions, recursions, and so on.). C is good because it's as simple
as manipulating beads on an abacus.
UNQUOTE

I think perhaps you are conflating 'successful' and 'good' here.  It
looks as if Richard is talking about the former and your remarks are
directed to the latter.

One thing missing from his list is corporate backing which is very
important.  Prolog really attained visibility when the Japanese Fifth
Generation Initiative made it the flagship and put big money behind
it.  Put a big enough engine in something and even a brick will fly.
Though, sometimes, as with PL/1, not very far.

Mark

OFF TOPIC: it is my understanding that PL/I has flown, to a certain extent.

I know the language to a certain extent, and I don't dislike it.  It is
somewhat of a fashion thing to criticize the PL/I.  Like wearing miniskirts
simply because everyone else does.  (The quintessential example of a
fashion-type phenomenon.)

The original version of MULTICS (the predecessor of UNIX (TM) , the
precedessor of Linux) was written in PL/I.  (Yes, I'm as old as that.......)

kind regards, andy

PS.  and one more note: Xah Lee wrote very well about the history of
LISP/AI/functional programming, to my opinion.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.