A programming language designed for easy expressing and understanding

don't worry about the performance - It can be improved at some point Self Optimizing Virtual Machine

don't worry about the existing ecosystem - It can be easily rebuilt if the design is successful

Design A

A stable dynamic typed purely functional core (a lisp dialect) with a very fixed set of data types

(purely functional here means no side-effect, not referential transparency)

And build things on top of it

things going to be easy

  • run programs backward and forward
  • virtualization
  • manipulate programs
  • Language-Oriented Programming
  • Implement multiple dependent type system
  • security through isolation
  • common tools for multiple sub-languages
  • ...

things going to be impossible

  • DRM (Digital Restrictions Management / Digital rights management)
  • debugging using print()
  • force everybody to use one unhackable and unchangeable object-oriented programming language
  • casually add side-effect to a part of a program
  • ...