Skip to content

Releases: mech-lang/mech

v0.2.17-beta

29 Oct 02:31
Compare
Choose a tag to compare

Numbers default to f64

The default numeric type has been switched to f64.

Set Value

-- scalar
x := 1.23; 
x = 4.56;

-- row vector
x := [6,2] 
x[1] = 4

Full Changelog: v0.2.16-beta...v0.2.17-beta

v0.2.16-beta

22 Oct 19:03
Compare
Choose a tag to compare

v0.2.15-beta

15 Oct 19:39
Compare
Choose a tag to compare

Strengthened tests.

Full Changelog: v0.2.14-beta...v0.2.15-beta

v0.2.14-beta

08 Oct 00:06
Compare
Choose a tag to compare

Variable Assign

You can use the = operator to assign values to variables now. Only works for scalars so far.

x := 1.23; 
x = 4.56;

Full Changelog: v0.2.13-beta...v0.2.14-beta

v0.2.13-beta

30 Sep 18:57
Compare
Choose a tag to compare

Enums

<foo> := `A | `B
x<foo> := `A   -- Works!
y<foo> := `C   -- Causes an error

v0.2.12-beta

23 Sep 18:21
Compare
Choose a tag to compare

Added enum definitions:

<foo> := A | B | C;

They don't do much yet.

Full Changelog: v0.2.11-beta...v0.2.12-beta

v0.2.11-beta

17 Sep 01:38
Compare
Choose a tag to compare

v0.2.10-beta

09 Sep 18:40
Compare
Choose a tag to compare

Define Kinds

<foo> := <i64>
x<foo> := 123

More Number Literals

0b10101   -- bin
0x123abc  -- hex
0o1234    -- oct
0d1234    -- dec

Full Changelog: v0.2.9-beta...v0.2.10-beta

v0.2.9-beta

02 Sep 18:48
Compare
Choose a tag to compare

Scientific Notation

x = 123.456e5
y = 123.456E-5

Full Changelog: v0.2.8-beta...v0.2.9-beta

v0.2.8-beta

27 Aug 20:19
Compare
Choose a tag to compare

Column dot select

x := { x<i64> y<i8>| 
       1      2 
       3      4 
       5      6 
       7      8 }; 
x.y

Table swizzle

x := { x<i64> y<u8>| 
       1      2 
       4      5 }; 
x.x,x,y

Logical indexing

ix := [false, false, true]'; 
x := [1 2 3 
      4 5 6 
      7 8 9]; 
x[:,ix]
x[[1,2,3,3],ix]
x[ix,ix]

Full Changelog: v0.2.7-beta...v0.2.8-beta