Open dselman opened 2 years ago
A document for discussion about the design goals for Ergo. Comments welcome. https://docs.google.com/document/d/1TqMxIuTbe21FIQiwUSpBUjfUyWXv1x-BE120QzkaoHQ/edit?usp=sharing
I also want to throw in Rescript as a language alternative because it's very similar to Javascript (Syntactically) but with the type safety of OCaml. This blog might be convincing : https://www.greyblake.com/blog/from-typescript-to-rescript/
Hello, we at Formal Land are willing to take care of this project. Our contact email is on our webpage. We primarily have experience in Coq and OCaml, plus other more mainstream languages like TypeScript. Thanks.
Ergo Futures
Martin Big fan of Ergo Reached out to OCaml / Coq community Coq may be an issue Could we replace Ergo with WASM? Use Rust or TS as the surface syntax? May help adoption if we use a mainstream language
Shubham Coq is the biggest issue
Tom Lawyers won’t be able to program in Rust, whereas Ergo is more approachable. Ergo DSL rewrite could be backwards compatible
Martin Do we expect lawyers to write Ergo? Simple logic for templates - handlebars What about expressions in Ergo?
Dan Could we reimplement Ergo DSL in Rust and use Rust modules for extensions? Expression language for the templates different to runtime transaction processing?
Matt Do we revise the design goals for logic for contracts? Do we target business people writing / understanding the code? Maintaining what we have currently is not sustainable. Finding another Coq maintainer is next impossible.
Discussion đź—Ł
The Ergo compiler is currently in need of a maintainer. This issue has been created to track/discuss the best strategy to move forward — nothing is off the table: finding new maintainers, or replacing Ergo with another language.
Context
@jeromesimeon has stepped away from the project.
Detailed Description
We need to find a new set of maintainers for Ergo, or replace Ergo with another language.
Requirements?
https://popl22.sigplan.org/home/prolala-2022#event-overview https://en.wikipedia.org/wiki/Hindley–Milner_type_system
Lua
https://en.wikipedia.org/wiki/Lua_(programming_language) https://daurnimator.github.io/lua.vm.js/lua.vm.js.html https://github.com/ceifa/wasmoon
AssemblyScript
https://www.assemblyscript.org
TypeScript
https://www.typescriptlang.org
Rust
https://www.rust-lang.org
WASM
https://github.com/appcypher/awesome-wasm-langs
FEEL (from DMN)
https://github.com/EdgeVerve/feel