Idea 1
Explicit types and being able to append arbitrary properties to objects seems cool.
The syntax is somewhat inspired by Turtle and I like having a more natural language feel to it.
fact is a function ;
with params acc and n ;
such that
if n <= 1 then
acc
else
fact (acc * n) (n - 1) .
x is a user ;
with username ffkkinos , -- types are infered
email example@example.com .
c is a circle ;
with radius 10 .
s is a rectangle ;
with width 10 , -- appending arbitrary properties to `s`
height 20 .
web1 is a website ;
with title "Title" ,
url https://example.org .
web2 is a website ;
with title "Title" ,
author me .
-- question the system
what is a website ? -- something with title, url?, and author? .