plum
git clone https://git.pyrossh.dev/plum
A statically typed, imperative programming language inspired by rust, python
plum-tooling/tree-sitter-plum/test/corpus/trait.txt
================================================================================
trait
================================================================================
trait ToStr =
toStr() -> Str
trait Animal =
speak() -> Str
legs() -> Int
walk()
eat(food: FoodType) -> Unit
--------------------------------------------------------------------------------
(source
(trait
(type_identifier)
(field
(fn_identifier)
(type
(type_identifier))))
(trait
(type_identifier)
(field
(fn_identifier)
(type
(type_identifier)))
(field
(fn_identifier)
(type
(type_identifier)))
(field
(fn_identifier))
(field
(fn_identifier)
(param
(var_identifier)
(type
(type_identifier)))
(type
(type_identifier)))))