mirror of
https://github.com/HigherOrderCO/Bend.git
synced 2024-09-11 03:45:29 +03:00
Update docs and bump version to 0.2.34
This commit is contained in:
parent
2be44a29e3
commit
67760ee3b0
@ -1,5 +1,8 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.2.34
|
||||||
|
- Added `<=` and `>=` operators. (#451)
|
||||||
|
|
||||||
## 0.2.33
|
## 0.2.33
|
||||||
- Added `expand_main`, a compilation pass that expands references in the entry point function. (#424)
|
- Added `expand_main`, a compilation pass that expands references in the entry point function. (#424)
|
||||||
- Changed the `float_combinators` pass to not extract in the entry point function. (#424)
|
- Changed the `float_combinators` pass to not extract in the entry point function. (#424)
|
||||||
@ -11,4 +14,4 @@
|
|||||||
- Created the changelog.
|
- Created the changelog.
|
||||||
|
|
||||||
## 0.2.0
|
## 0.2.0
|
||||||
- Initial public release of Bend.
|
- Initial public release of Bend.
|
||||||
|
2
Cargo.lock
generated
2
Cargo.lock
generated
@ -62,7 +62,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "bend-lang"
|
name = "bend-lang"
|
||||||
version = "0.2.33"
|
version = "0.2.34"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"TSPL",
|
"TSPL",
|
||||||
"clap",
|
"clap",
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
name = "bend-lang"
|
name = "bend-lang"
|
||||||
description = "A high-level, massively parallel programming language"
|
description = "A high-level, massively parallel programming language"
|
||||||
license = "Apache-2.0"
|
license = "Apache-2.0"
|
||||||
version = "0.2.33"
|
version = "0.2.34"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
rust-version = "1.74"
|
rust-version = "1.74"
|
||||||
exclude = ["tests/"]
|
exclude = ["tests/"]
|
||||||
|
@ -384,6 +384,7 @@ Therefore, all `bind` functions must call the builtin function `undefer` before
|
|||||||
This is necessary to ensure that the continuation in recursive monadic functions stays lazy and doesn't expand infinitely.
|
This is necessary to ensure that the continuation in recursive monadic functions stays lazy and doesn't expand infinitely.
|
||||||
|
|
||||||
This is an example of a recursive function that would loop if passing the variable `a` to the recursive call `Result/foo(a, b)` was not deferred:
|
This is an example of a recursive function that would loop if passing the variable `a` to the recursive call `Result/foo(a, b)` was not deferred:
|
||||||
|
|
||||||
```python
|
```python
|
||||||
def Result/foo(x, y):
|
def Result/foo(x, y):
|
||||||
with Result:
|
with Result:
|
||||||
@ -546,21 +547,23 @@ u24 = 42
|
|||||||
|
|
||||||
Currently, the 3 number types cannot be mixed.
|
Currently, the 3 number types cannot be mixed.
|
||||||
|
|
||||||
| Operation | Syntax | Supported Types |
|
| Operation | Syntax | Supported Types |
|
||||||
| -------------- | -------- | ---------------- |
|
| --------------------- | -------- | ---------------- |
|
||||||
| Addition | x + y | int, float, uint |
|
| Addition | x + y | int, float, uint |
|
||||||
| Subtraction | x - y | int, float, uint |
|
| Subtraction | x - y | int, float, uint |
|
||||||
| Multiplication | x \* y | int, float, uint |
|
| Multiplication | x \* y | int, float, uint |
|
||||||
| Division | x / y | int, float, uint |
|
| Division | x / y | int, float, uint |
|
||||||
| Remainder | x % y | int, float, uint |
|
| Remainder | x % y | int, float, uint |
|
||||||
| Exponentiation | x \*\* y | float |
|
| Exponentiation | x \*\* y | float |
|
||||||
| Equal | x == y | int, float, uint |
|
| Equal | x == y | int, float, uint |
|
||||||
| Not Equal | x != y | int, float, uint |
|
| Not Equal | x != y | int, float, uint |
|
||||||
| Less Than | x < y | int, float, uint |
|
| Less Than | x < y | int, float, uint |
|
||||||
| Greater Than | x > y | int, float, uint |
|
| Greater Than | x > y | int, float, uint |
|
||||||
| Bitwise And | x & y | int, uint |
|
| Less Than or Equal | x <= y | int, float, uint |
|
||||||
| Bitwise Or | x \| y | int, uint |
|
| Greater Than or Equal | x >= y | int, float, uint |
|
||||||
| Bitwise Xor | x ^ y | int, uint |
|
| Bitwise And | x & y | int, uint |
|
||||||
|
| Bitwise Or | x \| y | int, uint |
|
||||||
|
| Bitwise Xor | x ^ y | int, uint |
|
||||||
|
|
||||||
### Constructor Literals
|
### Constructor Literals
|
||||||
|
|
||||||
@ -1026,6 +1029,7 @@ Therefore, all `bind` functions must call the builtin function `undefer` before
|
|||||||
This is necessary to ensure that the continuation in recursive monadic functions stays lazy and doesn't expand infinitely.
|
This is necessary to ensure that the continuation in recursive monadic functions stays lazy and doesn't expand infinitely.
|
||||||
|
|
||||||
This is an example of a recursive function that would loop if passing the variable `a` to the recursive call `Result/foo(a, b)` was not deferred:
|
This is an example of a recursive function that would loop if passing the variable `a` to the recursive call `Result/foo(a, b)` was not deferred:
|
||||||
|
|
||||||
```python
|
```python
|
||||||
Result/foo x y = with Result {
|
Result/foo x y = with Result {
|
||||||
ask a = (Result/Ok 1)
|
ask a = (Result/Ok 1)
|
||||||
@ -1078,21 +1082,23 @@ u24 = 42
|
|||||||
|
|
||||||
Currently, the 3 number types cannot be mixed.
|
Currently, the 3 number types cannot be mixed.
|
||||||
|
|
||||||
| Operation | Syntax | Supported Types |
|
| Operation | Syntax | Supported Types |
|
||||||
| -------------- | ---------- | ---------------- |
|
| --------------------- | ---------- | ---------------- |
|
||||||
| Addition | (+ x y) | int, float, uint |
|
| Addition | (+ x y) | int, float, uint |
|
||||||
| Subtraction | (- x y) | int, float, uint |
|
| Subtraction | (- x y) | int, float, uint |
|
||||||
| Multiplication | (\* x y) | int, float, uint |
|
| Multiplication | (\* x y) | int, float, uint |
|
||||||
| Division | (/ x y) | int, float, uint |
|
| Division | (/ x y) | int, float, uint |
|
||||||
| Remainder | (% x y) | int, float, uint |
|
| Remainder | (% x y) | int, float, uint |
|
||||||
| Exponentiation | (\*\* x y) | float |
|
| Exponentiation | (\*\* x y) | float |
|
||||||
| Equal | (== x y) | int, float, uint |
|
| Equal | (== x y) | int, float, uint |
|
||||||
| Not Equal | (!= x y) | int, float, uint |
|
| Not Equal | (!= x y) | int, float, uint |
|
||||||
| Less Than | (< x y) | int, float, uint |
|
| Less Than | (< x y) | int, float, uint |
|
||||||
| Greater Than | (> x y) | int, float, uint |
|
| Greater Than | (> x y) | int, float, uint |
|
||||||
| Bitwise And | (& x y) | int, uint |
|
| Less Than or Equal | (<= x y) | int, float, uint |
|
||||||
| Bitwise Or | (\| x y) | int, uint |
|
| Greater Than or Equal | (>= x y) | int, float, uint |
|
||||||
| Bitwise Xor | (^ x y) | int, uint |
|
| Bitwise And | (& x y) | int, uint |
|
||||||
|
| Bitwise Or | (\| x y) | int, uint |
|
||||||
|
| Bitwise Xor | (^ x y) | int, uint |
|
||||||
|
|
||||||
### Character Literal
|
### Character Literal
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user