Enso2023
From APIDesign
(Difference between revisions)
(→Improving Language & Libraries) |
|||
| (One intermediate revision not shown.) | |||
| Line 33: | Line 33: | ||
** [https://github.com/enso-org/enso/pull/7009 Automatically apply from conversion when runtime argument check fails] - making [[Enso]] a ''conversion oriented'' language | ** [https://github.com/enso-org/enso/pull/7009 Automatically apply from conversion when runtime argument check fails] - making [[Enso]] a ''conversion oriented'' language | ||
* [https://github.com/enso-org/enso/pull/6218 Consolidate Vector and Array methods] | * [https://github.com/enso-org/enso/pull/6218 Consolidate Vector and Array methods] | ||
| - | * Improving ([[Rust]]) parser [https://github.com/enso-org/enso/pull/8415 Multi line chained operator syntax] | + | * Improving ([[Rust]]) parser: [https://github.com/enso-org/enso/pull/8415 Multi line chained operator syntax] |
| - | List of [https://github.com/enso-org/enso/issues?q=state%3Aclosed%20author%3Ajaroslavtulach%20closed%3A2023%20sort%3Acreated-asc 252 issues and requests] resolved in 2023. | + | List of [https://github.com/enso-org/enso/issues?q=state%3Aclosed%20author%3Ajaroslavtulach%20closed%3A2023%20sort%3Acreated-asc 252 issues and requests] resolved in 2023. Next year is [[Enso2024]]. Previous year was [[Enso2022]]. |
Current revision
Another year at Enso. I think I started to feel more confident about the code base than in Enso2022 and was able to start designing:
- propose architectural changes
- suggest language changes
- change the infrastructure to work better
Performance and Runtime
- Speed Standard.Base initialization in simple Hello World example up!
- Any.== slowed down by gigantic EqualsNode specializations
- Removing need for asynchronous thread to execute ResourceManager finalizers
- Improve inlining of <|
- Interop with Python and JavaScript and other Truffle languages
- Custom serde format optimized for lazy loading
- 400x faster with linear hashing
Tooling
- Basic VSCode support for Enso language and development
- Basic IGV Scala Support
- Integration with VisualVM - write logs in XML & co.
Improving Language & Libraries
- Making it really immutable - like Removing Unsafe.set_atom_field
- Suspended atom fields are evaluated only once
- Designed and implemented runtime type system:
- Clearly report type errors on API boundary
- Automatically apply from conversion when runtime argument check fails - making Enso a conversion oriented language
- Consolidate Vector and Array methods
- Improving (Rust) parser: Multi line chained operator syntax
List of 252 issues and requests resolved in 2023. Next year is Enso2024. Previous year was Enso2022.