mirror of
https://github.com/HigherOrderCO/Bend.git
synced 2024-09-11 03:45:29 +03:00
Update multi line comment syntax, update changelog
This commit is contained in:
parent
9d898882fb
commit
6020fbac8e
14
CHANGELOG.md
14
CHANGELOG.md
@ -11,10 +11,12 @@ and this project does not currently adhere to a particular versioning scheme.
|
||||
|
||||
- Fix variable binding in pattern matching when the irrefutable pattern optimization occurs. ([#618][gh-618])
|
||||
- Don't warn on unused generated definitions. ([#514][gh-514])
|
||||
- Fix local definitions not being desugared properly. ([#623][gh-623])
|
||||
|
||||
### Added
|
||||
|
||||
- Add import system ([#544][gh-544])
|
||||
- Add import system. ([#544][gh-544])
|
||||
- Add multi line comment `#{ ... #}` syntax. ([#595][gh-595])
|
||||
|
||||
## [0.2.36] - 2024-07-04
|
||||
|
||||
@ -370,9 +372,11 @@ and this project does not currently adhere to a particular versioning scheme.
|
||||
[gh-494]: https://github.com/HigherOrderCO/Bend/issues/494
|
||||
[gh-502]: https://github.com/HigherOrderCO/Bend/issues/502
|
||||
[gh-512]: https://github.com/HigherOrderCO/Bend/issues/512
|
||||
[gh-514]: https://github.com/HigherOrderCO/Bend/issues/514
|
||||
[gh-516]: https://github.com/HigherOrderCO/Bend/issues/516
|
||||
[gh-526]: https://github.com/HigherOrderCO/Bend/issues/526
|
||||
[gh-528]: https://github.com/HigherOrderCO/Bend/issues/528
|
||||
[gh-544]: https://github.com/HigherOrderCO/Bend/pull/544
|
||||
[gh-562]: https://github.com/HigherOrderCO/Bend/issues/562
|
||||
[gh-570]: https://github.com/HigherOrderCO/Bend/issues/570
|
||||
[gh-573]: https://github.com/HigherOrderCO/Bend/issues/573
|
||||
@ -383,9 +387,9 @@ and this project does not currently adhere to a particular versioning scheme.
|
||||
[gh-582]: https://github.com/HigherOrderCO/Bend/issues/582
|
||||
[gh-583]: https://github.com/HigherOrderCO/Bend/issues/583
|
||||
[gh-586]: https://github.com/HigherOrderCO/Bend/issues/586
|
||||
[gh-595]: https://github.com/HigherOrderCO/Bend/issues/595
|
||||
[gh-596]: https://github.com/HigherOrderCO/Bend/issues/596
|
||||
[gh-618]: https://github.com/HigherOrderCO/Bend/issues/618
|
||||
[gh-514]: https://github.com/HigherOrderCO/Bend/issues/514
|
||||
[gh-544]: https://github.com/HigherOrderCO/Bend/pull/544
|
||||
[Unreleased]: https://github.com/HigherOrderCO/Bend/compare/0.2.36...HEAD
|
||||
[gh-598]: https://github.com/HigherOrderCO/Bend/issues/598
|
||||
[gh-618]: https://github.com/HigherOrderCO/Bend/issues/618
|
||||
[gh-623]: https://github.com/HigherOrderCO/Bend/issues/623
|
||||
[Unreleased]: https://github.com/HigherOrderCO/Bend/compare/0.2.36...HEAD
|
||||
|
@ -201,9 +201,6 @@ pub enum Term {
|
||||
Def {
|
||||
def: Definition,
|
||||
nxt: Box<Term>,
|
||||
// nam: Name,
|
||||
// rules: Vec<Rule>,
|
||||
// nxt: Box<Term>,
|
||||
},
|
||||
Era,
|
||||
#[default]
|
||||
|
@ -1101,8 +1101,8 @@ impl<'a> Parser<'a> for TermParser<'a> {
|
||||
self.advance_one();
|
||||
while let Some(c) = self.peek_one() {
|
||||
self.advance_one();
|
||||
if c == '}' {
|
||||
if let Some('#') = self.peek_one() {
|
||||
if c == '#' {
|
||||
if let Some('}') = self.peek_one() {
|
||||
self.advance_one();
|
||||
break;
|
||||
} else {
|
||||
@ -1271,8 +1271,8 @@ pub trait ParserCommons<'a>: Parser<'a> {
|
||||
while let Some(c) = self.peek_one() {
|
||||
self.advance_one();
|
||||
char_count += 1;
|
||||
if c == '}' {
|
||||
if let Some('#') = self.peek_one() {
|
||||
if c == '#' {
|
||||
if let Some('}') = self.peek_one() {
|
||||
self.advance_one();
|
||||
char_count += 1;
|
||||
break;
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
|
||||
|
||||
}#
|
||||
#}
|
||||
|
||||
def main:
|
||||
#{
|
||||
@ -12,44 +12,44 @@ def main:
|
||||
#
|
||||
return 0
|
||||
|
||||
#{foo type}#
|
||||
#{foo type#}
|
||||
type Foo:
|
||||
#{foo constructor}#
|
||||
#{foo constructor#}
|
||||
Foo { foo }
|
||||
|
||||
#{bar type}#
|
||||
#{bar type#}
|
||||
object Bar { bar }
|
||||
#{
|
||||
# ignore
|
||||
# }#
|
||||
#}#
|
||||
|
||||
#{X x x x}#
|
||||
(X x x x) = #{ x }# x #{ x }#
|
||||
#{X x x x#}
|
||||
(X x x x) = #{ x #} x #{ x #}
|
||||
|
||||
#{V}#
|
||||
#{V#}
|
||||
type V
|
||||
= #{V constructor}# V
|
||||
= #{V constructor#} V
|
||||
|
||||
(String/is_empty s) =
|
||||
#{test if string is nil}#
|
||||
#{test if string is nil#}
|
||||
match s #{
|
||||
|
||||
}#{
|
||||
#}{
|
||||
String/Nil: 1
|
||||
String/Cons: 0
|
||||
}
|
||||
|
||||
def String/not_empty(s):
|
||||
#{test if string if not nil}#
|
||||
#{test if string if not nil#}
|
||||
match s:
|
||||
#{
|
||||
its
|
||||
not
|
||||
}#
|
||||
#}
|
||||
case String/Nil:
|
||||
return 0
|
||||
case String/Cons:
|
||||
#{
|
||||
it
|
||||
is}#
|
||||
is#}
|
||||
return 1
|
||||
|
Loading…
Reference in New Issue
Block a user