This repository has been archived by the owner on Jan 18, 2024. It is now read-only.
Version 0.1.5
Changelog
Language
- forbidden the division operator
/
, but implementedstd::ff::invert
forfield
inversion - allowed casting to types with lesser bitlength (runtime error on overflow)
- added the bitwise operators
|
,|=
,^
,^=
,&
,&=
,<<
,<<=
,>>
,>>=
,~
(constant expressions only) - added the binary (e.g.
0b101010
) and octal (e.g.0o52
) integer literals - implemented match exhaustiveness checking without the binding or wildcard pattern
- removed
static
statements for global variables (useconst
instead) - limited
match
scrutinee expression to boolean and integer only, since it is impossible to destructure complex types for now - reserved some keywords (see Appendix C of the Zinc book)
Compiler
- fixed the bug with
!
while passing a non-builtin function call as a built-in one's argument - fixed the bug with duplicate match expression branches
Overall
- added a wrapper directory to the release archives to prevent tar- and zip-bombs