evinism / evinism/lambda-explorer
move to more performant internal representation
未关闭
performance
- 主要语言
- JavaScript
- 星标
- 69
- 派生
- 10
- PR 合并指标
- 30 天内没有已合并 PR
描述
The current internal representation leaves a lot to be desired.
Low hanging fruit would be to directly represent a(a(a(a(b)))) not as 5 different functions, but maybe just one function with a `composed: 4` key. That would probably make performance actually acceptable for large functions.
The final version of this is that we can probably get hella hella speed improvements if we 'compile' the expression before beta reduction... but that sounds hard.
Requires having tests
贡献指南
这个仓库没有索引到贡献指南
调研方向
首先在 JavaScript 项目中定位当前的表达式表示形式和 beta-reduction 的入口点。为提议的组合表示形式添加测试,并衡量大型函数是否有所改进,同时将 beta-reduction 之前的编译视为一个独立的设计问题。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- javascript
- 领域
- compilers
- Issue 类型
- 重构
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100