Ether-Dimensional Programming Paradigm

The Paradigm

Ether-dimensional programming paradigm (EDPP) was originally designed as an experiment. This website provides basic information on it and the Aetherlang programming language made to demonstrate basic concepts.

Main features of the EDPP:

Other ideas that consequently occur:

How it works

Here are some illutrations of how program flow in the paradigm looks like (I hate UML, flow-style diagrams are much more representative for this).
The flow of a regular program without parallelism could look like this:

simple flow

flow with a condtion Φ and a loop L

However, in EDPP you can easily construct nested parallel dimensions for the interpreter or compiler, which allows you to have multiple flows that you can manage with primitive tools. Most importantly, when running a new dimension from the current one, its namespace gets carried further via namespace hierarchy. Note that in Aetherlang, after a namespace is created any changes to it do not result into changes in other namespaces in the hierarchy.

use :base

dim D0
 dim D1
  dim D11
  enddim D11
 enddim D1
 dim D2
  dim D12
  enddim D12
  J = timepoint void
  if [cond] :(gotime J)
  dimwait :D21
 enddim D2
 dimwait :D1
 dimwait :D2
 dimwait :D11
enddim D0

EDPP example with dimensions Dx and a loop J.


For now, there's only one language designed specifically for the EDPP. You can help to spread this experimental idea by creating more or by writing new interpreters and libraries for the existing one. Contact me and I'll put your creation on the list.















About Author