Slashdot Mirror


Edsger Wybe Dijkstra: 1930-2002

Order writes "Edsger Wybe Dijkstra, one of the founding fathers of computer science and the author of the famous "Go To Considered Harmful", has died on Aug. 6, 2002 after a long struggle with cancer."

9 of 404 comments (clear)

  1. "We're not worthy!"... by Sebastopol · · Score: 3, Interesting


    After reading this article, I think we all need to pause for a minute, and consider the insight of this simple observation.

    Add his definition of things human minds are geared to list: static relationships. It's perfectly in line with Dawkins statement that human minds are designed to comprehend things roughly human-sized moving at roughly human-speeds.

    I keep forgetting how long people have been programming. Think about how many people using GOTO there were back in 1968. Probably only a few thousand. Crazy.

    --
    https://www.accountkiller.com/removal-requested
  2. Respects by BigWorm · · Score: 4, Interesting

    Any service that uses pathfinding algorithms (such as MapQuest) should pay their respest.

  3. re:guards by epine · · Score: 3, Interesting

    Two chapters from one of Dijkstra's books improved my program correctness by an order of magnitude, and this was after I had fully digested Bertrand Meyer on programming by contract. His notion of guards is the number one item on my top ten list of everything I know about writing correct code.

  4. drop this /. thread and read Dijkstra's work by dankelley · · Score: 5, Interesting
    To enjoy the next hour (or week, or month, ...) set aside this /. thread and enter into a Dijsktra thread.

    Just looking at his U texaspublication list is an awesome (pre-1990s meaning) experience. Let your eyes scan it, as they would the Grand Canyon. Then wander around the UTexas site, where many publications are online, and start reading. You'll be a better person for it. And you may experience a thrill of understanding, when you see that his hands hold up so much of today's code, as Shakespeare's hands hold up so much of the language and common experience of the English world.

    To get a feel for the span of his life's work, consider his thesis title, "Communications with an automatic computer." The word "automatic" was necessary then, to distinguish it from a person with a calculator. The machine he used in his thesis? It had a 32K memory unit. He divided this into what he called "living" and "dead" memory.

    Let's hope that his memory will be of the living variety.

    To a man I never shall meet, thank you.

  5. Dijstra's papers from the mid 1970's. by sbaker · · Score: 5, Interesting

    When I was just fresh out of college back in 1978, a collegue of mine who had been on Dijstras circulation list gave me a large stack of photocopied papers from Dijstra...all written in his own handwriting because he liked to invent his own symbols and found typewriters too limiting. I was working for Philips Research at the time - and I suppose Dijstra was working at Philip's "Math Center" in Eindhoven, Holland.

    I've kept a whole boxful of his papers over the years - just because they are so fascinating to browse.

    He invented his own programming language for expressing algorithms - but doesn't seem ever to have written a compiler for it. He refers to algorithms his mother came up with...almost every document has something interesting like that.

    The notes are written in the most perfect handwriting you've ever seen.

    They could have been printed - they are that precise. Then, one of them out of the blue seems to have been written in someone else's handwriting - it's just as amazingly neat though and when you get to the end of it, it says something like: Apologies for the poor handwriting in this note, but my left hand could use some practice. :-)

    These cannot be stored as text files without losing most of their historical interest. Maybe I should spend an evening or two to scan them and put them online. There could be no more fitting tribute to the man.

    --
    www.sjbaker.org
  6. Re:he taught an honors undergrad course at UT by dant · · Score: 3, Interesting

    I took it in 1992. He was an amazing professor--as eccentric as you'd imagine him to be. I remember him once asking us if any of us knew of a good place to get his worn Birkenstocks repaired.

    He was the person who first made me realize--at a visceral level--that clear thought is as important in a program as clear prose is in writing a novel.

    After the final exam (conducted verbally, one-on-one, at his home), he asked me what one thing I would most take away from his class. He seemed to consider my answer to this question more important than my performance on the test itself. I told him what the above about literature and programming. He nodded, thought for a bit, and said 'Very good. Can I offer you some tea before you go?'.

    I got an A, so I guess he liked my answer.

  7. Re:Contents of article by sbaker · · Score: 3, Interesting

    It's bad to think of Dijstra only in terms of *one* memorable thing he did...but since we're doing that anyway...

    When I learned to program in the early '70s, our lecturer told us that if we used even *one* 'goto' in our work, we'd score zero for the entire assignment.

    I've been programming for ~30 years now and never felt the slightest need to use one in a high level language since that day.

    I strongly disagree about recursion though. Used properly, it's *very* readable:

    void binaryTree::walk_binary_tree ( void )
    {
    if ( isALeafNode () ) ...processLeafNode...
    else
    {
    leftBranch -> walk_binary_tree () ;
    rightBranch -> walk_binary_tree () ;
    }
    }

    Try writing that more cleanly without recursion!

    (NOTE: You may be able to make it faster or more memory efficient without recursion though).

    The art of reading and writing recursive programs is to try to forget that they are recursive.

    I think to myself:

    "In order to walk this tree, I walk the two child branches
    - hmmm - I have a function to walk trees - I'll just use it
    and assume it'll do what it's told."

    The fact that the routine you are calling is also the routine you are currently writing just doesn't matter in most cases.

    --
    www.sjbaker.org
  8. Linux Kernel by AftanGustur · · Score: 5, Interesting


    Those who actually read the linux kernel source codem probably already knew Dijkstra and his god-like powers in the computer-sciences.

    But for those who put their nose in there and juts read the comments, there are some references

    Fr example: drivers/scsi/NCR5380.c

    goto part2; /* RvC: sorry prof. Dijkstra, but it keeps the rest of the code nearly the same */
    --
    echo '[q]sa[ln0=aln80~Psnlbx]16isb572CCB9AE9DB03273snlbxq' |dc
  9. So long, and thanks for all .. by C.+E.+Sum · · Score: 4, Interesting

    I received my computer science degree from the University of Texas, where Dr. Dijkstra taught before retiring. I never took the undergraduate class he offered (I was kind of intimidated at the time), but the professor who taught my Software Engineering class had him come in to lecture one day.

    This software engineering class was very pragmatic, emphasizing methodical design, implentation, and testing. As I recall, Dr. Dijkstra gave his lecture near the end of our semester, by which time we had been heavily involved in something resembling a team development evironment for a few months.. There was a very corporate feeling to our regimen of meetings and reports.

    So one day we all go to the faculty lounge to hear the esteemed professor speak. He comes in the door of the lounge appearing to me most unlike the kind of man who could write so forcefully about programming, dressed in shorts and a tee-shirt with a distinctly old-grandfather look on his face.

    In his very soft-spoken manner, he told us that he beleived that the main problem with programmers was a lack of rigor. People were so concerned with coding and testing that they never learned how to write something correctly the first time. He asked us to prove the correctness of the code for a binary search and spent the next half-hour proceeding glumly as we slowly worked through the process with him.

    I got the impression we were a vaguely dissapointing group of students who he could tell were not convinced of the validity of his approach. It wasn't even a bitter dissapointment, though. I felt as though he was someone who had totally convinced himself that he knew how to make the world a better place, but that noone was listening.

    He answered our questions about "gotos considered harmful" (it was his editor's idea to give it the cute title) with what I considered obvious patience. He talked about how he really only was able to keep up on the research that people referred to him these days. And then the lecture was over.

    Our professor and Dr. Dijkstra were good friends, and I hung around after class talking with them about computer science and Dijksta's past. I ended up in his office after a while and we chatted about the current state of the industry as he saw it, why he really liked Texas, and so on. He was so intelligent in his conversation--asked so many probling questions--that by the time I was done I felt both touched and exhausted. He put on his cowboy hat and walked out of the office with me and headed off to his next appointment.

    That was the last time I saw Esdgar Dijkstra--the only real time I ever talked to him. But I feel that the world has lost a quiet crusader, and I feel a tug in my heart thinking about this old dean of computer science with his cowboy hat.

    --
    -- Have you ever imagined a world with no hypothetical situations?