Twoville

The educational technology and digital learning wiki
Jump to navigation Jump to search

Draft

Introduction

“Twoville is a programming language for generating two-dimensional SVG images that can be fed into vinyl or laser cutters. It also supports animation at the syntactic level.” (teaching machines, retrieved Jan 2019.

Twoville is under development (as of Jan 2020), but it can be used.

There exist few other alternatives, e.g. the no longer supported TurtleBlocks.

The language

Unlike the similar Madeup environment for 3D printing, created by the same author, this environment is as of Jan 2020 less well documented and does not include a block version.

The syntax looks a mix of Logo and JavaScript.

Example fragments:

Defining a blue rectangle

width = 150
height = 100
with rectangle ()
  corner = [0,0]
  size = [20, 10]
  color = [0.1, 0.1, 1]

Below, an alternative notation, using property syntax:

width = 150
height = 100
rect = rectangle ()
rect.corner = [0,0]
rect.size = [20, 10]
rect.color = [0.1, 0.1, 1]

Links

  • Introducing Twoville, February 24, 2018 by Chris Johnson. This piece explains some early animation features