Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'll never regret asking this long-shot request on HN -- thanks to Harold Ancell and Marvin Minsky:

https://news.ycombinator.com/item?id=10161002

>DonHopkins on Sept 2, 2015 | parent | context | favorite | on: The most obsolete infrastructure money could buy –...

>I remember running across a Turing machine emulator implemented in TECO in Minsky's home directory that I'd REALLY love to get ahold of.

>hga on Sept 2, 2015 [–]

>Ask and yea shall receive:

    MSG: APL    1     
    DISTRIB:  *BBOARD
    EXPIRES: 03/17/81 23:08:54
    MINSKY@MIT-MC 03/11/81 23:08:54 Re: too-short programs

    APL is compact, I suppose.  So is TECO.  When I wrote the following
    Universal Turing Machine, which works, I actually understood it.

    [ I've interpolated the non-printing characters as displayed by (Gnu) EMACS, 
    escape is ^], ^^ is one character, as is \356: ]

    i1Aul qq+^^0:iqm^[29iiq\356y0L1 00L1 11L2 A1L1
    y0L1 0yR2 1AR2 AyR6 yyL3 00L0 1AL3 A1L4 yyL4 0yR5 11L7 A1L4
    yyR5 0yL3 1AR5 A1R5 yyR6 0AL3 1AR6 A1R6 y0R7 0yR6 11R7 A0R2
    ^[j<sR^[;-d-2ciql-^^^[ci"ed^^^[cii^[ciuq'^[>
    j<sL^[;-d-2ciql-^^^[ci"ed^^^[cii-2c^[ciuq'^[>jxblx1lx2lx3lx4lx5lx6lx7hk
    iyyAyyAyy^[32<i0^[>ji110101110000010011011^[ 1uq<htmbqq=>

    I do not advise attempting to understand this code, which is
    almost as bad as that for the Universal Turing machine.
>ADDED: or http://ancell-ent.com/share/minsky-TECO-turing-machine.txt

>Please ack receipt of this and/or send me email (in my HN info); for others, note this is ITS TECO, which I was told was by far the most powerful version of it (fortunately, by the time I showed up learning it was no longer really necessary).

>DonHopkins on Sept 3, 2015 | root | parent [–]

>OOP ACK! It was a shot in the dark, but I am SO GLAD I asked!!! Thank you Harold!

>It looks just like I remember. ;)

TECO eminently qualifies as a "Turing Tar Pit":

https://en.wikipedia.org/wiki/Turing_tarpit

>A Turing tarpit (or Turing tar-pit) is any programming language or computer interface that allows for flexibility in function but is difficult to learn and use because it offers little or no support for common tasks. The phrase was coined in 1982 by Alan Perlis in the Epigrams on Programming:

>>54. Beware of the Turing tar-pit in which everything is possible but nothing of interest is easy.

>In any Turing complete language, it is possible to write any computer program, so in a very rigorous sense nearly all programming languages are equally capable. Showing that theoretical ability is not the same as usefulness in practice, Turing tarpits are characterized by having a simple abstract machine that requires the user to deal with many details in the solution of a problem. At the extreme opposite are interfaces that can perform very complex tasks with little human intervention but become obsolete if requirements change slightly.

>Some esoteric programming languages, such as Brainfuck, are specifically referred to as "Turing tarpits" because they deliberately implement the minimum functionality necessary to be classified as Turing complete languages. Using such languages is a form of mathematical recreation: programmers can work out how to achieve basic programming constructs in an extremely difficult but mathematically Turing-equivalent language.

https://en.wikipedia.org/wiki/TECO_(text_editor)#As_a_progra...

>As a programming language: The obscurity of the TECO programming language is described in the following quote from "Real Programmers Don't Use Pascal", a letter from Ed Post to Datamation, July 1983:

>>It has been observed that a TECO command sequence more closely resembles transmission line noise than readable text. One of the more entertaining games to play with TECO is to type your name in as a command line and try to guess what it does. Just about any possible typing error while talking with TECO will probably destroy your program, or even worse - introduce subtle and mysterious bugs in a once working subroutine.

https://en.wikipedia.org/wiki/Real_Programmers_Don%27t_Use_P...

https://www.ee.ryerson.ca/~elf/hack/realmen.html



Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: