16 May 23
An overview of the concepts behind Symbolics Genera, the operating system for Lisp Machines from Symbolics.
12 May 23
Stack-based languages occupy a niche in today’s programming language environment. The predominant stack-based language in use by programmers is Forth, and is found mostly on embedded devices. These languages also find use as compile targets for more popular languages: the CIL and JVM are both stack-based. Less popular but highly interesting languages to mention include Joy and Factor, known for their emphasis on higher-order stack-based programming.
09 May 23
The Malleable Systems Collective is a community space that catalogs and experiments with malleable software and systems that reset the balance of power via several essential principles.
The eight queens problem was apparently first proposed by Max Bezzel in the Berliner Schachzeitung (1848) and first fully solved by Franz Nauck in Leipziger Illustrierte Zeitung (1850). It asks in how many ways eight queens can be placed on a chess board so that no two attack each other.
05 May 23
Imagine, if you can, a small room, hexagonal in shape, like the cell of a bee. It is lighted neither by window nor by lamp, yet it is filled with a soft radiance.
03 May 23
Multitasking is the ability to run several independent programs in a single CPU, apparently simultaneously. Of course, a single CPU can only run one instruction at a time. The illusion is created by switching the CPU very quickly – hundreds of times a second – among several different programs. Each of these programs is called a “task,” hence the name “multitasking.”
02 May 23
The ideas for might have forgotten or never knew or needed reminding or should have forgotten in computer science
01 May 23
INMOS TN07 - Exploiting concurrency: a ray tracing example
A virtual computer can be used to specify today processes that will need to be executed on a future, still unknown, real machine. The only requirement is that a UVC emulator be always available (a relatively simple task compared to an emulator of a real machine.)
28 Apr 23
ompact models of fundamental ideas have aided thinking in many sciences. We think they haven’t been done often enough in computing, but when done, have had similar positive effects [Mo]. We want our model to be explanatory, but we also want it to run well enough to serve as a practical artifact with a wide range of application. A good model of personal computing should certainly cover today’s good ideas and scales, but because it is an extreme abstraction, it does not have to reverse engineer shortfalls in unity and design; instead, it can be unified as much as possible if it covers the worthwhile parts of the end-user experiences.
The portability of a programming language is strongly influenced by its design, the structure of its compiler and the mechanism used to transfer it from one machine to another. Although the prime concern of this paper is to discuss a method of easing the boot- strapping problem, it is in order to survey the effects on a language of requiring it to portable, since decisions in this area have a considerable bearing on the subsequent bootstrapping problem.
An architecture, the minimal set of elementary reversible operations together with an implementation of the basic control flow structures and procedures calls using simple assembler language are described.
22 Apr 23
This is a ‘mark sense’ card, issued around 1970 by IOWO, the Dutch Institute for Development of Mathematics Education (today named Freudenthal Institute). It was used for teaching the Algol programming language to high school students.
This is an audio compact disc, containing 60 of the Basic programs which were broadcast by the Dutch public radio (NOS) during the 1980’s. For decoding the signals you had to connect the radio receiver’s audio output to the cassette tape input of the computer.
14 Apr 23
You are going to make a compiler right here on these web pages. Yes - no kidding. In fact you are going to make a lot of compilers - and it’s all going to be easy.
META II is a domain-specific programming language for writing compilers. It was created in 1963–1964 by Dewey Val Schorre at UCLA. META II uses what Schorre called syntax equations. Its operation is simply explained as:
Each syntax equation is translated into a recursive subroutine which tests the input string for a particular phrase structure, and deletes it if found.
13 Apr 23
This post is an abridged adaptation of Simon Peyton Jones’ and David R. Lester’s book, “Implementing Functional Languages: a tutorial.”, itself a refinement of SPJ’s previous work, 1987’s “The Implementation of Functional Programming Languages”.
08 Apr 23
Before electronic calculators, the mechanical slide rule dominated scientific and engineering computation.
07 Apr 23
Tny is a little console. You know, these things with a screen and a controller where you play games? Right, so it’s that, but very basic. In fact, it’s so basic that the size of its screen is only 16 by 16 pixels, its controller only has arrow keys and two buttons and its game cartridge memory is 256 bytes maximum. Oh and it doesn’t have any sound or color.
06 Apr 23
MarblePunk is a fictional, educational programming language based on the idea of coding with marbles. It is defined by a fictional universe, in which, due to the natural laws of the universe, programs can be “build” with marble runs.