Skip to content

sherzodv/sbottomlang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

SBottom community language

Defining feature set and syntax:
  powerful state of the art type system with proof assistent expressiveness
  easy readable syntax suitable for "value"
  best tooling

current backend:
  golang
  native in mind

function levels:
  def: typelevel function, body runs at compile time to form a type
  gen: macrolevel function, body runs at compile time to manipulate ast
  fun: runtime level function, ordinary function, body runs at runtime to perform actual work

engineering:
  infrustructural abstractions ?
    distributed computations
    code hash control ?

type system:
  subtyping
  structural types
  dependent types
  higher order types
  session types ?
  linar types ?
  totality control
  type classes

effects:
  fully expressible in type system
  rich effects library
  algebraic effects?

syntax features:
  multi-clause functions
  dot notation / method chaining
  uniform function call
  scala like string interpolators
  
modules:
  file system bound?
  open syntax (header)
  no intersections
  
tooling:
  rich std (scala)
  lsp
  ides: 
    vscode
    idea
    vim
    emacs
  build system:
    should be fast (both start & run)
    allow code level packages
    reproducible builds
    modularity and extensibility

ffi:
  native
  go
  jvm

crazy ideas:
  contextual coherency:
    each set of contextual instances create a globally referenceable context: need to come up with syntax for this
    coherent keyword, marks both summoning and type defs as globally unique

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published