22 lines
No EOL
1.3 KiB
Text
22 lines
No EOL
1.3 KiB
Text
{{language|Trith
|
|
|exec=interpreted
|
|
|site=http://trith.org/
|
|
|gc=yes
|
|
|parampass=value
|
|
|safety=safe
|
|
|strength=strong
|
|
|compat=duck
|
|
|express=implicit
|
|
|checking=dynamic
|
|
|untyped=yes
|
|
|tags=trith
|
|
|LCT=yes}}
|
|
{{language programming paradigm|Concatenative}}
|
|
{{language programming paradigm|Functional}}
|
|
{{language programming paradigm|Dynamic}}
|
|
{{language programming paradigm|Reflective}}
|
|
'''Trith''' is an experimental stack-based, [http://concatenative.org/wiki/view/Concatenative%20language concatenative] programming language by [[User:Arto Bendiken|Arto Bendiken]]. It is dynamically typed and has a homoiconic program representation. The implementation currently consists of a virtual machine, interpreter, and compiler toolchain written in [[Ruby]] and an in-the-works runtime targeting the [[runs on vm::Java Virtual Machine|JVM]].
|
|
|
|
Trith programs are simply nested lists of operators and operands, with the operators identified by URIs. This means that Trith code can be straightforwardly represented externally either as S-expressions or as [http://linkeddata.org/ Linked Data] in the form of [http://en.wikipedia.org/wiki/Resource_Description_Framework RDF] triples.
|
|
|
|
Trith is inspired and influenced by the author's experience with [[Forth]], [[Lisp]] and [[Scheme]] in general, and the concatenative languages [[Joy]], [[XY]], [[Factor]] and [[Cat]] in particular. |