283
edits
KalmanKeri (talk | contribs) No edit summary |
KalmanKeri (talk | contribs) No edit summary |
||
| Line 1: | Line 1: | ||
'''Pipe-calculus''' is a universal model of computation that is closely related to [[ | '''Pipe-calculus''' is a universal model of computation that is closely related to [[Wikipedia:process_calculus|process calculus]], [[Wikipedia:lambda_calculus|lambda calculus]] and [[Wikipedia:Formal_grammar|formal grammars]], joining a tradition that studies computation hand in hand with formal languages and automata theory<ref>[[Wikipedia:Introduction_to_Automata_Theory,_Languages,_and_Computation|Introduction to Automata Theory, Languages, and Computation]]</ref>. | ||
Its distinctive feature is the inclusion of syntactic primitives, so it is possible to express | Its distinctive feature is the inclusion of syntactic primitives, so it is possible to express program structure and data types using only the built-in constructors. | ||
Pure pipe-calculus is untyped | Pure pipe-calculus is untyped. Construction of a [[ideas_for_a_type_system|type system]] is an ongoing effort, placing the focus on well-typed communication of programs. | ||
Although the core calculus is sufficiently expressive to be used as a programming language, with added [[Syntax_sugar_(Pipe-calculus)|syntax sugar]] it can be the basis of typed or untyped | Although the core calculus is sufficiently expressive to be used as a programming language, with added [[Syntax_sugar_(Pipe-calculus)|syntax sugar]] it can be the basis of various typed or untyped programming languages. | ||
Its characteristic features like I/O and stream orientation make pipe-calculus a suitable choice for scripting languages. | Its characteristic features like I/O and stream orientation make pipe-calculus a suitable choice even for scripting languages. | ||
<div style="background-color: #f4f4f4; border: 1px solid #e8e8e8; padding: 0.3em 0.7em 0.3em 0.7em;"> | <div style="background-color: #f4f4f4; border: 1px solid #e8e8e8; padding: 0.3em 0.7em 0.3em 0.7em;"> | ||
edits