Skip to content
pannous edited this page Nov 30, 2022 · 28 revisions

🐝 Wasp : Wasm Programming Language

𓆤 Wasp is a new unified notation for both markup/object data and code. Wasp is the foundation layer of the higher order programming language angle.

«Data is Code and Code is Data»

Examples

Hello World in Angle is
"Hello World"

The deep formal reason why this is a valid program is that the last object in a block is its return value and the last result in the root block of the main file is printed.

Fibonacci in Angle is

fibonacci number = if number<2 : 1 else fibonacci(number - 1) + fibonacci it - 2

Note how number simulataneously acts as type and variable name. This invention is called matching by type name. Note how the unique argument number can be accessed via it keyword and brackets are optional

Auto typed fibonacci in Angle is

fib := if it<2 : 1 else fib(it-1) + fib it - 2

A typical class record with optional fields can be expressed like this

class contact {
 name 
 email?
 phone?
 address {
  street
  city
  zip?
 }
}

Again we have the concept of matching by type name: The field email is inferred to have type Email.

For further reading scroll up and search or expand the pages section on the right

Home

Philosophy

data & code blocks

features

inventions

evaluation

keywords

iteration

tasks

examples

todo : bad ideas and open questions

⚠️ specification and progress are out of sync

Clone this wiki locally