mirror of
https://github.com/Nexoniarz/Finch.git
synced 2026-11-03 16:54:25 +00:00
- fn Struct.method(...) with self by reference, also on C structs
- map[K]V: insertion-ordered hash maps, literals, m[k] += 1, has/get/remove/keys/values
- -> T! / -> !, return error(...), or <value>, or { err }, try; fallible int/float/read_file/write_file/delete_file
- for i, x in list / for k, v in map
- print and str() share one text formatter
- LSP: method and map completion, method signatures; grammar and snippets for VS Code and Kate
- tests: 74 (methods, errors, maps + 11 failure cases); docs at all three levels, en and pl
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
10 lines
246 B
Text
10 lines
246 B
Text
// expect: try passes the error on, so 'twice' must be able to fail too (-> int!)
|
|
fn parse(str s) -> int! {
|
|
return int(s) or { return error("bad") }
|
|
}
|
|
fn twice(str s) -> int {
|
|
return try parse(s) * 2
|
|
}
|
|
fn main() {
|
|
print(twice("2"))
|
|
}
|