Actually just three programming languages in a trenchcoat
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

discovering more bugs ...

+43 -7
+15
testsuite/match-typeof/main.tri
··· 1 + proc main!() { 2 + let first = match [1, 2, 3] 3 + case typeof 'string then 1 4 + case typeof 'tuple then 2 5 + case typeof 'struct then 3 6 + case typeof 'array then 4 7 + else { assert false } 8 + let second = match 'hello('world) 9 + case typeof 'string then 1 10 + case typeof 'tuple then 2 11 + case typeof 'struct then 3 12 + case typeof 'array then 4 13 + else { assert false } 14 + assert first + second == 7 15 + }
+2
testsuite/string-representation/main.tri
··· 10 10 io::println!($"${0bb01}") 11 11 io::println!($"${1:'b}") 12 12 io::println!($"${'hello('world)}") 13 + io::println!($"${[]}") 14 + io::println!($"${[1, 2]}") 13 15 }
+1 -1
testsuite/string-representation/spec.toml
··· 1 - output = "unit\ntrue\nfalse\n3\nhello\nhi\n01\n1:b\nhello(world)\n" 1 + output = "unit\ntrue\nfalse\n3\nhello\nhi\n01\n1:b\nhello(world)\n[]\n[1, 2]\n"
+11 -6
trilogy-parser/src/syntax/template.rs
··· 50 50 segments.push(TemplateSegment { interpolation, end }); 51 51 break; 52 52 } 53 - let tag = parser 54 - .check(TokenType::Identifier) 55 - .ok() 56 - .map(|_| ()) 57 - .map(|_| Identifier::parse(parser)) 58 - .transpose()?; 53 + parser.chomp(); 54 + let tag = if !parser.is_line_start { 55 + parser 56 + .check(TokenType::Identifier) 57 + .ok() 58 + .map(|_| ()) 59 + .map(|_| Identifier::parse(parser)) 60 + .transpose()? 61 + } else { 62 + None 63 + }; 59 64 60 65 let mut span = template_start.span; 61 66 if !segments.is_empty() {
+14
trilogy/src/stdlib/core.tri
··· 101 101 let lhs:rhs = destruct!(val) 102 102 $"${lhs}(${rhs})" 103 103 } 104 + # TODO: This is not working well, even just to have this case in place 105 + # case typeof 'array { 106 + # let mut str = $"[" 107 + # let mut i = 0 108 + # while i < length!(val) { 109 + # str <>= $"${val.i}" 110 + # i += 1 111 + # if i != length!(val) { 112 + # str <>= ", " 113 + # } 114 + # } 115 + # str <>= "]" 116 + # str 117 + # } 104 118 else then primitive_to_string!(val) 105 119 }