Releases: emojicode/emojicode
1.0 beta 2
Install with magic installation here
🤩 This is 1.0 beta 2.
- Improved syntax:
- 👇 instead of 🐕
- 🆗 for 🥑
- Use 📏 instead of 🐔 for collections.
- Enums are now declared with 🔘.
- Use ❎ instead of 🚫 for integers.
- 🍿 New universal literals #156
- 🆕 🆕 syntax
- Infer generic type variables in initializers.
- String interpolation 🧲
- Method and initializer overloading.
- Improved type inference.
- Add sanity checks for memory flow promises.
- Use emoji file extension 🍇 more prominently and
🏛
instead ofinterface.emojii
. - Fix bugs with ♻️, generic boxing, a bug with type methods on generic types, a bug with MFA, stack allocation in loops (fix #151)
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
1.0 beta 1
Install with magic installation here
😲 Let’s get excited. This is the first 1.0 pre-release.
🥇 This update brings these awesome, premium grade features:
- 🐚 Advanced generic dynamism (i.e. casting).
- 🎉 JSON parsing returns in the JSON package.
- 🏎 Fine tuning, custom optimization passes and other improvements bring performance improvements of up to 60%.
🥈 Moreover, improvements include:
- 🐕 Short-cut syntax for calling a method on this object. Just write 🙋❗instead of 🙋🐕❗.
- ◼️No return got its own representation.
- 📦 s package gained additional APIs.
- 🎍General decorator syntax for a more future-proof syntax.
- Short-circuit 🤝 and 👐 and other operator improvements.
- Give 🔺 prefix precedence.
- Upgrade to LLVM 8.
🥉 Last but not least, some bug fixes:
- 🐛 Fixes a bug that could cause 🍯🐔 to return incorrect values.
- 🐜 Fixes a bug where boxed optionals with no value would be treated as having a value when releasing.
- 🦟 Fixes a bug that could cause undefined behavior when using 🧠.
- 🍇 Fixes a bug in the pretty printer that caused closures to be printed incorrectly.
⁉️ Fixes a bug that could cause memory leaks when calling callables.- 🍇 Fixes a bug where capture values might be released.
- ♻️ Fixes destruction process to avoid use-after-free in deinitializers.
- 🔡 Fixes a bug with 💯 to 🔡 conversion (#131)
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
0.9.0
Install with magic installation here
- 🔺New, better, more versatile error handling (#112)
- 🔸Introducing multi-emoji identifiers
- 🧼 Upgrade to LLVM 7
- 🔲 Fixes a bug that caused values to be incorrectly retained in casts.
- 🖍 More precise, path-based variable initialization analysis.
- 🍇 Allow non-escaping closures to modify local variables and value type contexts.
- ℹ️ Allow compiler to display supporting notes when emitting compiler errors.
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
0.8.4
Install with magic installation here
- 📦 Fixes a bug that could occur when importing packages.
- ➡️ Fixes a bug that would prevent functions with certain return types from compiling.
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
0.8.3
Install with magic installation here
- ↪️ Improves flow control code generation
- 🦃 Fixes a bug that could cause enums to malfunction across packages
- 🍬 Fixes a bug related to boxing and optionals
- 🔲 Improves errors for incorrect cast operations
- 🍇🍉 Fixes a minor bug related to closures
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
0.8.2
Install with magic installation here
- 📦 Bundle testtube package for distribution.
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
0.8.1
Install with magic installation here
- 🍇 Fixes a bug related to boxing.
- 🖍 Fixes a bug related to the release of variable values.
-r
now outputs its report to the filedocumentation.json
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
0.8
Install with magic installation here
It’s time for another update
- 🐦 Adds a method to search for a value in a 🍨.
- ✴️ Introduces references.
- 🥯 Introduces inline functions.
- Adds warnings for variable shadowing.
- Fixes a bug that allowed returned values to be mutated.
- Fixes a bug related to stack allocation.
- Entirely removes extensions.
- Fixes bugs related to instance variables with a default initialization value.
If you have any questions, comments, feedback, suggestions or whatever you come up with, open an issue or join the chat or follow Emojicode’s Twitter account now.
0.7
Install with magic installation here
This update brings many improvements:
- Optionals for pointer types are more efficient.
- Strings now use UTF-8, which avoids a lot of copying. The interface has also been changed.
- Concatenation, dictionary and list literals avoid unnecessary allocations.
- 💈 has been renamed to 🧵.
- Lists and dictionaries are value types now. Read more in the documentation.
- Improvements to the LLVM IR the compiler emits—or simply speaking faster executables.
- Emojicode now ships with
testtube
for unit testing. - Emojicode now has an emoji file extension:
hello.🍇
(Thanks to @rozaxe and @zored) - Improved access level inheritance
- Added an additive inverse method (#106)
- Instance variables can be declared and assigned directly in the type body.
Speed improvements of up to 95% compared to 0.6.4 can be seen.
Keep coding emoji lovers! 💚
0.6.4
- Fixes a serious memory management bug related to ↩️.
- 🍇 Fixes a bug that prevented callables from being used with generics and ⚪️.
- 🍇 Fixes closures inside initializers.
- ⚗️ Seed hash returned by 🔡⚗️.
- 🆕 Fixes unexpected initialization behavior.
It is not gonna get any awesomer. Seriously. 😊