prototype

Working on the Zajal installation for Open Studios. It’s going to be a hackable asteroids/shmup game with physical Arduino-driven controls. Exciting!

These screenshots demonstrate the asteroid generation algorithm I’m working on.

 

Second prototype of قلب’s code calligraphy. This one says مرحبا يا عالم (hello world), which isn’t executable code, but code-related and fun anyway.

 

First prototype of قلب’s code calligraphy, done in square kufic with glass tiles. It says “لكل ن” (for each n) and matches the bottom-right part of the bubble sort calligraphy prototype on the language’s site.

In preparation for Eyebeam’s Open Studios later this week.

 

Mockup of قلب’s new Scheme inspired syntax. I’ve been trying to arrive at a syntax that translates better into calligraphy than the first mockup, and with the parentheses removed, this syntax is nothing but words and numbers.

The parentheses are needed for the code to run correctly, but there is a precedent in leaving off dots, vowel markings, and punctuation in calligraphy, sacrificing readability for elegance.

The Scheme-like syntax is also easier to write an interpreter for.

The code was typed into TextMate, so it is unhighlighted and left-aligned. The English equivalent would be:

 

I’m putting together this language design tool that lets you specify basic syntax highlighting for a fictional language as you develop it. It helps avoid staring at unhighlighted code during a language’s initial sketches. It is built on CodeMirror.

The top pane is where you sketch in your language. Write whatever you want there. The lower pane is where you specify the syntax highlighting as pattern, token pairs.

 

Prototype of the editor I am writing for my Arabic programming language. It is a WebKit WebView with a customized CodeMirror instance. The code listed is an implementation of bubble sort. The equivalent Ruby code would be:

for n in 0..list.length
for m in 0..(list.length - n - 2)
if list[m + 1] > list[m] then
swap list[m], list[m + 1]
end
end
end

Part of my fellowship at Eyebeam exploring Code as Self Expression.

 
Thumbnail

Based on the EARTH dataset, individual terrain sections are printed with the 3d Systems solid object printer. These rapid prototyping prints then become the molds for archival plaster casts. The casts then become a projection surface for digital data from the specific locations.  Using only a single 35mm slide projector, "Discrete Terrains" are the absolute simplest technological reduction of the "EARTH" and "Terrain Machine" projects.

Project Created: 
January 2002
 
Projects: Discrete Terrains, EARTH
People: John Klima
Research: R&D Lab
Project Type: Animation, Green, Installation
Tags: earth, geospatial, interactive, plaster, prototype, web
Syndicate content