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/const.txt
================================================================================
const
================================================================================
PI = 3.14
MSG = "Hello World"
SUM = 1 + {{2 * 3} / 4}
ENABLED = !False
OPEN = {count > 10} && {enabled == True} || {debug == False}
COUNTRIES_LIST = listOf("US", "INDIA", "CANADA")
--------------------------------------------------------------------------------
(source
(const
(const_identifier)
(expression
(primary_expression
(float))))
(const
(const_identifier)
(expression
(primary_expression
(string
(string_start)
(string_content)
(string_end)))))
(const
(const_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)))))))))))
(const
(const_identifier)
(expression
(not_operator
(expression
(primary_expression
(type_identifier))))))
(const
(const_identifier)
(expression
(boolean_operator
(expression
(boolean_operator
(expression
(primary_expression
(parenthesized_expression
(expression
(comparison_operator
(primary_expression
(var_identifier))
(primary_expression
(integer)))))))
(expression
(primary_expression
(parenthesized_expression
(expression
(comparison_operator
(primary_expression
(var_identifier))
(primary_expression
(type_identifier)))))))))
(expression
(primary_expression
(parenthesized_expression
(expression
(comparison_operator
(primary_expression
(var_identifier))
(primary_expression
(type_identifier))))))))))
(const
(const_identifier)
(expression
(primary_expression
(fn_call
(var_identifier)
(fn_argument_list
(expression
(primary_expression
(string
(string_start)
(string_content)
(string_end))))
(expression
(primary_expression
(string
(string_start)
(string_content)
(string_end))))
(expression
(primary_expression
(string
(string_start)
(string_content)
(string_end))))))))))