SETL – Building a SETL Compiler From Scratch and Then Using It To Teach The Art of Programming in SETL

A Simple SETL Compiler

April 5, 2009 · Leave a Comment

Python is a subset of SETL. The Python compiler is the compiler for that subset of SETL.

This yields a siimple implementation of a SETL compiler for this subset:

#/bin/bash
cp $1.stl $1.py
python $1.py

→ Leave a CommentCategories: Uncategorized

Hello World in SETL

April 3, 2009 · 2 Comments

I just wrote my first SETL program in almost two decades:

print "hello world"

I compiled and ran it via:

$ cat > hi.stl
print "hello world"
$ stlc hi

where stlc is defined by:

#/bin/bash
cp $1.stl $1.py
python $1.py

→ 2 CommentsCategories: Uncategorized

Python is a Subset of SETL

April 3, 2009 · Leave a Comment

Python is a subset of SETL.

Put another way, SETL is an extension of Python.

Every valid Python program is also a valid SETL program.

The SETL language specification is thus based on the Python language specification.

→ Leave a CommentCategories: Uncategorized

How to Build Your Own SETL Ubuntu 8.10 Linux Desktop Computer for About $250

April 3, 2009 · 2 Comments

It is recommended, but not required, that you do your work on the SETL project using a computer that you have built yourself.

See Building your own Linux Ubuntu computer using the ECS GeForce 6100SM-M motherboard for instruction on how to build your own computer. [1]

You should get all the components from Newegg. See On Buying and Building Hardware: Break a Leg with Newegg

Here are the recommended components:

  • AMD Athlon 64 X2 5400 Brisbane 2.8GHz 2 x 512KB L2 Cache Socket AM2 65W Dual-Core black edition Processor – Retail
  • Kingston 2GB (2 x 1GB) 240-Pin DDR2 SDRAM DDR2 800 (PC2 6400) Dual Channel Kit Desktop Memory – Retail
  • SAMSUNG Black 22X DVD+R 8X DVD+RW 16X DVD+R DL 22X DVD-R 6X DVD-RW 12X DVD-RAM 16X DVD-ROM 48X CD-R 32X CD-RW 48X CD-ROM 2MB Cache IDE 22X DVD±R DVD Burner – OEM
  • APEVIA ATX-CW500WP4 500W ATX Power Supply – Retail
  • Antec Three Hundred Black Steel ATX Mid Tower Computer Case – Retail
  • As I write this post, these components can be bought for just over $250. There is a *very* powerful computer. [2]

    You can use any keyboard or mouse. I strongly recommend a “Unicomp” keyboard. They can be had for about $60. Lacking that I recommend the Kensington 64365 Black 104 Normal Keys 8 Function Keys USB Wired Slim Keyboard – Retail, which costs $30.

    I have at hand a comparable machine, so I will not get one now.

    An additional advantage of building your own SETL computer is you will then be able to report on performance information that can be shared with others. Each such machine will serve as a benchmark.

    Note:

    1. This post is my most popular, with 13,600 of the 153,000 views to date.

    2. It is left as an exercise to the reader familiar with hardware to determine the earliest year this computer would have been ranked among the world’s one hundred fastest supercomputers. I would venture a guess that the date is in the 1990’s.

    → 2 CommentsCategories: Uncategorized

    Hello world! Help us build a SETL compiler

    April 3, 2009 · 1 Comment

    Any interested party is invited to join is in:
    1) Building a SETL compiler from scratch using Python as the implementation language;
    2) Using the compiler to teach the Art of Programming in SETL

    We will begin by building our own computers…

    → 1 CommentCategories: Uncategorized