grin/TODO.md
Csaba Hruska 1bc70555f7 add todo
2018-03-06 11:33:54 +01:00

947 B

Todo ideas

  • distinguish Val constuctors (LambdaPattern ConstansPattern SimpleValue Value)
  • rename Val types to a more descriptive names; see above
  • GRIN AST gen EDSL
  • better name representation instead of strings
  • generate unique names when branching (unique name A + branching direction = unique name B)
  • efficient substitution
  • type safer and easy to use AST
  • add simple frontend language with grin conversion (GHC/STG -> GRIN)
  • generate apply

CodeGen

  • simplify/refactor LLVM codegen
  • vectorisation = tagged union conversion (on branch: var-tag-node-is-tagged-union) ; better syntax for tagged union (parser + pretty printer)
  • read back LLVM reduced result to Haskell data (including the heap)

GRIN framework

  • scoped type environment
  • scoped names ; it would make inlining easy (the idea is similar to bound)
    • HPT
    • optimisiations
    • type env

HPT

  • LLVM backend for HPT IR
  • inline support
  • sharing analysis