Skip to content

Instantly share code, notes, and snippets.

@BekaValentine
Created September 11, 2018 08:17
Show Gist options
  • Select an option

  • Save BekaValentine/1aa6e3ec142230bb34fa28ca0cbefd32 to your computer and use it in GitHub Desktop.

Select an option

Save BekaValentine/1aa6e3ec142230bb34fa28ca0cbefd32 to your computer and use it in GitHub Desktop.
Future Plutus Roadmap
- Current Plutus
? User-friendly Documentation for Plutus
? Improved feedback from the type checker
- Better error messages
- Better explanations/localizations of messages
- Better information on the context (both scope and syntactic context)
- Better suggestion for repair
- Holes??
! Good REPL
- Better handling of inputs (eg backspace, cursor movement, etc)
- More options (type of a term, info on a term, module imports/exports, etc)
- In-REPL definition/extension of the definitions/declarations
- Dependency/import visualizations
!! Improved PL framework
- New ABT rep
- Better scope handling
! Good editor support
- REPL-in-editor?
- Good syntax highlighting, bracket completion, etc.
? Good testing tools
- Support for running test files w/ conventionalized test function names
- Network simulation tools
- Ideal Future Plutus
- Hoogle-like search
- Interactive editor tools
- Holes!!
- Structural editing
- Smart refactoring, code changes, etc.
$ Integrations for formal methods
- Official formal models in Agda, Coq, etc. w/ associated theorems
- Multiple compilers for different backends
- Abstract/virtual machines targets
- Transpiler targets
- JS (Lisk and other bad ideas)
- Michelson (Tezos)
!! Extracted tools for PL design/implementation
- ABT Framework
- Proof Development Framework
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment