A picture representing the _New_Wave_ of programming.
View the project fullscreen: /newjossexample
newJOSS is a programming language roughly inspired by JOSS.
I don't think the name is going to stick around forever, but until it's semi-usable, it'll stay.

JOSS itself has three main features that I think are impressive.
0. A section/line numbering system that allows writing code out of order, and is easy to implement.
1. A syntax resembling English, that doesn't allow deeply nested expressions.
2. An entirely REPL driven interactive experience.

Literati, the literate programming framework, fulfills the first point.
This language represents the second point, but will eventually encompass them all.
More work needs to be done, expanding this interpreter to have more sensible scoping, nicer syntax, and a bytecode target.
As it stands, newJOSS took a day to write, and is thoroughly inadequate for use.
Its main design consideration was the ease with which you can write an interpreter for it, which it definitely satisfied.

A copy of the source (in Javascript) can be found at /pub/JOSS.js.

Below is an example standard library, providing easy looping and if statements.
# Inline if statements
define when $x do $prog...
  if x = 0 skip 1
    do prog
done

define when not $x do $prog...
  if x != 0 skip 1
    do prog
done

# Easier looping without goto:
define loop $^i from $x to $y and do $prog...
  ^i is x
  label there
  if ^i > y skip 3
    add 1 into ^i
    do prog
    if ^i < y goto there
done

# Some examples of different new syntax with references:
define $^xs are $y
  ^xs is y
done

define add $x into $^y
  add ^y and x into ^y
done

define dec $^y by $x
  subtract x from ^y into ^y
done