Jazz
所属分类:编译器/解释器
开发工具:Rust
文件大小:61KB
下载次数:0
上传日期:2022-06-17 01:24:23
上 传 者:
sh-1993
说明: Jazz-现代快速编程语言。
(Jazz - modern and fast programming language.)
文件列表:
Cargo.lock (14321, 2020-06-13)
Cargo.toml (343, 2020-06-13)
LICENSE (35149, 2020-06-13)
book (0, 2020-06-13)
book\book.toml (97, 2020-06-13)
book\src (0, 2020-06-13)
book\src\Jazz.md (1035, 2020-06-13)
book\src\SUMMARY.md (580, 2020-06-13)
book\src\Tour (0, 2020-06-13)
book\src\Tour\Alias.md (151, 2020-06-13)
book\src\Tour\Constexpr.md (210, 2020-06-13)
book\src\Tour\ControlFlow.md (1055, 2020-06-13)
book\src\Tour\Data_Types.md (1539, 2020-06-13)
book\src\Tour\Functions.md (2226, 2020-06-13)
book\src\Tour\Hello_World.md (1090, 2020-06-13)
book\src\Tour\Structs.md (394, 2020-06-13)
book\src\Tour\Unions.md (504, 2020-06-13)
book\src\Tour\Variables.md (1017, 2020-06-13)
book\src\getting-started (0, 2020-06-13)
book\src\getting-started\Installation.md (633, 2020-06-13)
book\src\getting-started\Using-compiler.md (1303, 2020-06-13)
examples (0, 2020-06-13)
examples\Snake (0, 2020-06-13)
examples\const_func.jazz (257, 2020-06-13)
examples\constexpr.jazz (134, 2020-06-13)
examples\factorial.jazz (206, 2020-06-13)
examples\function_overloading.jazz (395, 2020-06-13)
examples\globals.jazz (197, 2020-06-13)
examples\hello_world.jazz (103, 2020-06-13)
examples\std (0, 2020-06-13)
examples\std\display.jazz (1103, 2020-06-13)
examples\std\libc.jazz (3286, 2020-06-13)
examples\struct_creation.jazz (118, 2020-06-13)
... ...
# Jazz
Jazz - JIT/AOT compiled programming language that uses gccjit for emitting machine code.
# Roadmap
You can see roadmap there: [Jazz Roadmap](https://github.com/users/playXE/projects/3)
# TODO
- ~~comptime functions~~ DONE!
- Macros
- ~~Jazz2C++ Translator~~ DONE!
- ~~Struct initialization:~~ DONE!
# Building book
```
$ cd book
$ mdbook build
$ mdbook serve
```
Now you can open `http://localhost:3000/` in your browser.
# Example code
Factorial:
```go
import "std/libc.jazz"
func factorial(x: i32) i32 {
if x == 0 {
return 1;
} else {
return factorial(x - 1) * x;
}
}
pub func main() i32 {
printf("%i\n",factorial(5));
return 0;
}
```
# Building
1. Install libgccjit with version >= 9:
Fedora Linux
```
sudo dnf install libgccjit-devel
```
Ubuntu Linux
```
sudo apt install libgccjit-9-dev
```
2. Run `cargo build --release`
3. Run `cargo install --path .`
# Libraries and programs written in Jazz
- [AllegroJazz](https://github.com/playXE/AllegroJazz/) Jazz bindings to Allegro 5 library.
- [Snake](https://github.com/playXE/Snake-Jazz/) Snake game written in Jazz using AllegroJazz library
近期下载者:
相关文件:
收藏者: