Skip to content

Latest commit

 

History

History
35 lines (28 loc) · 1019 Bytes

goals.md

File metadata and controls

35 lines (28 loc) · 1019 Bytes

Goals

Silicon, relative to most major general purpose programming languages is simple.

List

  • WASM compilation target
  • Full-Stack web dev
  • blazingly fast compilation
  • interpreted for fast dev cycles
  • Algebraic Data Types
  • Pattern Matching
  • 100% Type Inference (safety without type gymnastics)
  • Co-routines (no colored functions)
  • ARC (no GC)
  • 100% Web API compatability
  • 100% Node API compatability

Non-Goals

In my opinion, non-goals are just as important as goals. They prevent scope-screep and keep the language and toolchain great at specific use-case instead of mediocre at everything.

*Not a direct goal but other tools will be used **A future, much less important goal to think about

  • Native Compilation*
  • LLVM / other native backends*
  • Variadic functions
  • Function over-loading
  • Game dev
  • Systems dev (Yes, even though Silicon has no GC and is fairly "low-level")
  • Operator overloading
  • Functionally Pure
  • Borrower Checker / compile-type memory safety**