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/literals.txt
================================================================================
literals
================================================================================
fun main() =
start_year = 2101
a = +123
b = -111
c = 456
d = 0xcafe
e = 0b001
pi = 3.14159
a = +1.2
b = -0.4
c = 12.0f
d = 15.03f
name = "plum"
a = True
b = False
sum = 1 + {{2 * 3} / 4}
# count = counter(10)
# e = {1 + 2}.mod(3).pow(2).sqrt()
--------------------------------------------------------------------------------
(source
(fn
(fn_identifier)
(body
(assign
(var_identifier)
(expression
(primary_expression
(integer))))
(assign
(var_identifier)
(expression
(primary_expression
(unary_operator
(primary_expression
(integer))))))
(assign
(var_identifier)
(expression
(primary_expression
(unary_operator
(primary_expression
(integer))))))
(assign
(var_identifier)
(expression
(primary_expression
(integer))))
(assign
(var_identifier)
(expression
(primary_expression
(integer))))
(assign
(var_identifier)
(expression
(primary_expression
(integer))))
(expression
(primary_expression
(integer)))
(assign
(var_identifier)
(expression
(primary_expression
(float))))
(assign
(var_identifier)
(expression
(primary_expression
(unary_operator
(primary_expression
(float))))))
(assign
(var_identifier)
(expression
(primary_expression
(unary_operator
(primary_expression
(float))))))
(assign
(var_identifier)
(expression
(primary_expression
(float))))
(assign
(var_identifier)
(expression
(primary_expression
(float))))
(assign
(var_identifier)
(expression
(primary_expression
(string
(string_start)
(string_content)
(string_end)))))
(assign
(var_identifier)
(expression
(primary_expression
(type_identifier))))
(assign
(var_identifier)
(expression
(primary_expression
(type_identifier))))
(assign
(var_identifier)
(expression
(primary_expression
(binary_operator
(primary_expression
(integer))
(primary_expression
(parenthesized_expression
(expression
(primary_expression
(binary_operator
(primary_expression
(parenthesized_expression
(expression
(primary_expression
(binary_operator
(primary_expression
(integer))
(primary_expression
(integer)))))))
(primary_expression
(integer)))))))))))
(comment)
(comment))))