1,025 karma · joined July 15, 2009
Where Wizards Stay Up Late by Katie Hafner and Matthew Lyon, about the origins of the Internet.
Weaving the Web by Tim Berners-Lee, about the origins of the World Wide Web.
https://greenteapress.com/wp/think-python-2e/
For code examples, I like Peter Norvig's pytudes:
That sounds the same as Python and Java work now. For python, you have .py source code files or .pyc or .pyo compiled files, but you still have to load them into the Python interpreter.
I asked the Franz LISP devs why they didn't provide a runtime you could just link in, yielding a releaseable executable program without all the baggage for breaking and debugging.
Even now, you typically need to have Python or Java installed on your computer to run Python or Java programs. There are ways to generate standalone Python executables but it's not the usual way of working.
I remember in the 1980s someone remarked that C and Pascal were more similar than Maclisp and Interlisp.
In their view, it all started to go wrong -- Unix began to depart from the founding principles -- as early as 1978. In their view, Berkeley Unix does not follow their Unix philosophy -- they don't like network sockets, for example, whose design was mostly imported from some earlier non-Unix system (maybe Tenex?).
Some of this attitude appears in Rob Pike's 'Good, Bad and Ugly' talk from 2001 [1]. He says the early Unix tools approach had, by then, already been replaced for most users by big do-everything programs: Emacs, Perl, browsers...
"... I have always detested emacs and vi. With ^D, ^C, and ^\, Unix has more than enough mystery chords to learn. Emacs and vi raised that number to a high power ...
... Unix was born of a taste for achieving big power by small means rather than by unbounded accumulation of facilities. But evolution, including the evolution of Unix, does not work that way. ..."
The editors favored by the original Unix guys are ed, sam, and acme.
1. https://minnie.tuhs.org/pipermail/tuhs/2014-August/006506.ht...
Even the CPU registers were on the drum memory. The control panel displayed the register contents on a small oscilloscope - it showed the bits as they rolled by the read head!
Haskell: https://github.com/GaloisInc/HaLVM
OCaml: https://mirage.io/
ML: http://dspace.mit.edu/handle/1721.1/47545
Lisp: In the 1970s and 1980s there were Lisp Machines with the OS written in Lisp. Too many sources to link here, they are often discussed on HN. They were marketed in the 1980s by Symbolics, LMI, and Xerox.
Also in the 1970s and 1980s there were computers running Smalltalk standalone - in effect, an OS in Smalltalk. They provided introspection.
[6.S081](https://pdos.csail.mit.edu/6.828/2019/index.html) (MIT, xv6 RISC-V, 2019), [6.828](http://pdos.csail.mit.edu/6.828/2018/xv6.html) (MIT, xv6 x86, 2018), [CS140e](http://web.stanford.edu/class/cs140e/) (Stanford, RPi C, 2019), [CS140e](https://downey.io/blog/cs140e-writing-an-operating-system-in...) (Stanford, RPi Rust, 2018, more on [HN](https://news.ycombinator.com/item?id=16134618), [Andre](https://github.com/rust-embedded/rust-raspi3-OS-tutorials) (RPi Rust, 2019), [CS140](http://www.scs.stanford.edu/12au-cs140/) (Stanford, 2012), [CS194-24](http://www.cs.berkeley.edu/~kubitron/courses/cs194-24-S13/in...) (Berkeley), [Baking Pi](http://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/) (Cambridge, RPi asm, 2012), [OS from Scratch](http://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/...) (Birmingham, more in [HN](https://news.ycombinator.com/item?id=8380822)), [OS Development](http://littleosbook.github.io/), (RIT Stockholm, more on [HN](https://news.ycombinator.com/item?id=13258063)), [these](http://news.ycombinator.com/item?id=4834008) (CMU, UMD, MIT, Stanford, Harvard), [BrokenThorn](http://www.brokenthorn.com/Resources/OSDevIndex.html), [bkerndev](http://www.osdever.net/bkerndev/index.php), [JamesM](http://www.jamesmolloy.co.uk/tutorial_html/) ... [OSDev.org](http://wiki.osdev.org/) is recommended in many sources. Here is a recent roundup on [HN](https://news.ycombinator.com/item?id=22087701), and [another](https://news.ycombinator.com/item?id=22149866) (both Jan 2020). This [textbook](http://csapp.cs.cmu.edu/) provides a recent overview of Unix + C OS.
VMS wasn't all vax assembly either. VMS and a lot of VAX system software was mostly written in BLISS [1], a high level language intended for systems programming that was created about the same time as C. It was all there for customers to read in a big stack of microfiche cards delivered with each machine. I remember being shown the code for the VMS scheduler or maybe the dispatcher which was 'a page or two of (VAX) assembly' - I recall it was pointed out that it was one of the (few) places in VMS that did use assembly.
I don't know how portable the BLISS code for VMS was, but there were BLISS compilers for several other machines besides the VAX.
<a href="http://ask.metafilter.com/home/popularfavoriteall"> <a href="http://ask.metafilter.com/71101/What-single-book-is-the-best..."> <a href="http://ask.metafilter.com/136110/What-are-the-most-wellwritt..."> <a href="http://ask.metafilter.com/94259/Classical-classics"> <a href="http://ask.metafilter.com/126006/Contemporary-Art-History-an..."> <a href="http://ask.metafilter.com/128286/WWI-what-happened"> <a href="http://ask.metafilter.com/143473/You-are-Socrates-I-am-Menos..."> <a href="http://ask.metafilter.com/85468/Past-performance-future-resu..."> <a href="http://ask.metafilter.com/82725/Recommendations-for-PC-drawi..."> <a href="http://ask.metafilter.com/85291/How-can-I-break-into-an-empt..."> <a href="http://ask.metafilter.com/89980/Oh-so-youre-a-insert-profess..."> <a href="http://ask.metafilter.com/113503/What-are-some-good-songs-to..."> <a href="http://ask.metafilter.com/123361/Help-me-unlock-the-power-of..."> <a href="http://ask.metafilter.com/164388/The-Old-Man-and-the-C-Drive"> <a href="http://ask.metafilter.com/222791/How-is-webbe-formd"> <a href="http://ask.metafilter.com/234622/Whats-the-bless-your-heart-..."> <a href="http://ask.metafilter.com/129661/Help-Really-Cool-Nonprofit-..."> <a href="http://ask.metafilter.com/122353/Whats-the-Best-Thing-Youve-..."> <a href="http://ask.metafilter.com/260505/What-are-the-most-interesti..."> <a href="http://ask.metafilter.com/266452/Smells-that-dont-exist-anym..."> <a href="http://ask.metafilter.com/273095/Nasty-harsh-scathing-litera..."> <a href="http://ask.metafilter.com/293366/Many-many-manifestos"> <a href="http://ask.metafilter.com/307896/Opinions-are-like-pizzas-ev...">
"The bottom line is that operating system services in many existing systems are either too slow or inappropriate. Current DBMSs usually provide their own and make little or no use of those offered by the operating system. ..."
Now, 40+ years later, Stonebreaker is a participant in the present DBOS project!
1. http://www.cs.fsu.edu/~awang/courses/cop5611_s2022/os_databa...
1. https://github.com/nopsys/nopsys
2. https://github.com/nopsys/CogNOS
Actually, he did. He wrote and self-published the big book Computer Lib/Dream Machines, which was ubiquitous and influential in the 1970s. More about that book and its influence here:
http://norvig.com/Lisp-retro.html
The next to last section in this, What Lessons are in PAIP? comprises 52 numbered sentences of advice, cross-referenced to fuller explanations in the book. Many (most?) of them apply to any programming or software engineering, not specifically AI or Lisp.
1. https://en.wikipedia.org/wiki/Light_Table_(software)
2. https://github.com/LightTable/LightTable
This was widely done with tube computers in the 1950s. The first commercial computer, Univac, was introduced in 1951.
Medical imaging gone except for maybe the x-ray.
The first commercial CT scanner in the 1970s used a Data General Nova minicomputer, which used small-scale integrated circuit logic chips, but did not include a microprocessor.
Behind the scenes all kinds of process control would disappear ...
The early PDP-8 minicomputers introduced in 1965 used discrete transitors, no integrated circuits. They were used in industrial control applications.
There is some confusion in this question and many of the reponses here between any electronics (computation and control using tubes dates from WWII at least), transistors (which became widely available in the mid-1950s, all-transistor computers reached the market in 1959), small scale integrated circuits that contained (for example) several logic gates or a few flip-flops (which reached the market in the mid-late 1960s) which were used to build computers but also many simpler electronic control devices, and finally microprocessors which finally reached the market about 1975.
Any electronics that reached the market before the mid or late 1970s did not use microprocessors. For example, the first commercial CT scanner used a Data General Nova minicomputer, which used small-scale integrated circuit logic gates, but did not use a microprocessor. The original Pong arcade game used around 60 small-scale integrated circuit logic gates, but no microprocessor.
If we didn't have integrated circuits, but were stuck with 1959 discrete transistors, or we didn't have microprocessors, but were stuck with 1974 small-scale integrated circuits, we could still have a pretty hi-tech world. There would be more emphasis on optimized design of special-purpose devices - that original Pong game is an example.