- Blockchain of blockchains with RSA public keys for resource registry (domain + intents/messages accepted)
- Go down from HTTP/WS to have a simpler/more essential protocol for communication. Protocol not based on simple human analogies (verb, noun)
- Protocol is (hopefully) implementation of Real OOP.
- External resources in the language are represented with URLs
- Discovery/caching decisions (URL resolution) is delegated to the runtime
- Runtime should eventually be a hypervisor that only manages resource allocation. Or dedicated hardware, programs for FPGA. High level functional language for FPGA programming.
- Language is expressed in an AST. AST can be formatted in different transport encodings (JSON for example).
- Language is just representation of category theory operations between the resources, assuming they fulfillthe expected types.
- Language is lazy and asynchonous by default. Tagline: "sync is just async that works very fast"
- Under the hood, operations are Real OOP (messages)
- Even if everything is actually local, the language and module system are modelled to be "internet native". The language is a "systems language", much like Erlang/Rust, but where the "system" is the internet. Purely functional, strongly typed systems programming language.
Created
February 18, 2017 20:53
-
-
Save xaviervia/05c38cfb7ce26b809b0a4f7f93c4c9ce to your computer and use it in GitHub Desktop.
2017-02-18
http://dormammu.com/Monoid : Monoid
http://dormammu.com/Data : Data
-> Monoid : a
-> Monoid : b
-> Data : c
-> c : y
-> c : z
> a (-> c x)) : aX
> a y : aY
+ aX aY : aXY
> b (< aXY) : bXY
<- (+ bXY (> b c))
same program
> a (-> c x)) : aX
-> http://dormammu.com/Monoid : a
http://dormammu.com/Data : Data
-> Monoid : b
> a y : aY
-> c : y
-> Data : c
<- (+ bXY (> b -> z))
+ aX aY : aXY
> b (< aXY) : bXY
> a (-> c x)) : aX
-> http://dormammu.com/Monoid : a
-> http://dormammu.com/Monoid : b
http://dormammu.com/Data : Data
> a y : aY
-> c : y
-> Data : c
<- (+ bXY (> b -> z))
+ aX aY : aXY
> b (< aXY) : bXY
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
using types as data:
Note: Mistakes made here: the types are not necessary as argument if lifting is not being done.
equivalent to: