Introduction to Wave v0.0.7-pre-beta: Fixed infinite recursive and stack overflow bugs due to previously incorrect ASTNode reuse
· 약 2분
Hello! I'm LunaStev, the developer of Wave.
We are very happy to introduce Wave v0.0.7-pre-beta
.
This release has previously addressed the issue of infinite recursive and stack overflow due to incorrect ASTNode reuse.
We also changed the name of the Wave compiler binary from wave
to wavec
.
Wave is growing fast, and we are very excited to share our future plans.
🔧 Bug Fixes
🐛 Fixed else if IR Infinite Loop Bug
- Resolved a critical bug where
stmt
was reused inside theelse if
block IR generation loop - Previously caused infinite recursion and stack overflow due to incorrect ASTNode reuse
- Fixed by replacing
stmt
withelse_if
when iterating overelse_if_blocks
✨ Other Changes
🛠 Renamed wave
to wavec
- Renamed the Wave compiler binary from
wave
towavec
- This change was made to prepare for the integration of Vex, the official package manager for Wave
- Separating the compiler tool (
wavec
) from the language name (Wave
) aligns with future plans for Vex integration
Showcase
Thank you for using Wave! Stay tuned for future updates and enhancements.
Installation Guide
For Linux:
-
Download and Extract:
- Download the
wave-v0.0.7-pre-beta-linux.tar.gz
file from the official source. - Use the wget command:
wget https://github.com/LunaStev/Wave/releases/download/v0.0.7-pre-beta/wave-v0.0.7-pre-beta-linux.tar.gz
- Extract the archive:
sudo tar -xvzf wave-v0.0.7-pre-beta-linux.tar.gz -C /usr/local/bin
- Download the
-
Setting up LLVMs
- Open a terminal and type:
sudo apt-get update
sudo apt-get install llvm-14 llvm-14-dev clang-14 libclang-14-dev lld-14 clang
sudo ln -s /usr/lib/llvm-14/lib/libLLVM-14.so /usr/lib/libllvm-14.so
export LLVM_SYS_140_PREFIX=/usr/lib/llvm-14
source ~/.bashrc
- Open a terminal and type:
-
Verify Installation:
- Open a terminal and type:
wavec --version
- If the version number displays, the installation was successful.
- Open a terminal and type:
Contributor
@LunaStev | 🇰🇷