-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
Description
Abstract(概要)
GXChain目前集成了WebAssembly的虚拟机,第一个版本实现了C++版本的合约代码编译和运行,AssemblyScript作为TypeScript的一个子集,允许把TypeScript编译成wasm, 这为我们实现typescript编写GXChain智能合约的设想提供了可能。
Motivation(动机)
Typescript是带类型描述的Javascript,其继承了Javascript简洁的语法的同时,带来了强类型的支持,Javascript是目前社区开发者增长最快也是未来最有前景的开发语言之一,如果能够实现Typescript编写智能合约,这将大大降低开发者开发GXChain智能合约的门槛。
Rational(合理性描述)
通过观察appcypher/awesome-wasm-langs这个repo的上展示的支持wasm编译的多种语言编译器进展情况,从技术成熟度角度分析,AssemblyScript目前理论上已经足够完全覆盖GXChain智能合约的基本类型和API要求
此外,目前EOS社区已有类似的想法提出,他们也在各自的想法中论述了自己的观点和合理性描述,可参考eos-typescript和EOSArgentina/eostypescript
因此,从社区需求、技术可信性和产品必要性上来说,通过typescript编写GXChain的智能合约,是合理且可行的。
为了论述技术可信性,本人也实现了一个demo工程,实现了typescript编写Hello world版本的GXChain智能合约lanhaoxiang/gxc-typescript
Specifications(规范)
TODO