BlooP, FlooP, and GlooP

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Created page with "{{FormatInfo |formattype=Languages |subcat=Programming Languages |released=1979 }} '''BlooP, FlooP, and GlooP''' are programming languages introduced for educational purpo...")
 
Line 4: Line 4:
 
|released=1979
 
|released=1979
 
}}
 
}}
'''[[BlooP, FlooP, and GlooP]]''' are programming languages introduced for educational purposes in chapter XIII of ''Gödel, Escher, Bach: An Eternal Golden Braid'' (ISBN 978-0-465-02656-2, ISBN 0-14-017997-6), by Douglas R. Hofstader. They are defined with strictly limited built-in capabilities in order to explore what sorts of computations are theoretically possible given a particular set of language capabilities.
+
'''[[BlooP, FlooP, and GlooP]]''' are programming languages introduced for instructional purposes in chapter XIII of ''Gödel, Escher, Bach: An Eternal Golden Braid'' (ISBN 978-0-465-02656-2, ISBN 0-14-017997-6), by Douglas R. Hofstader. They are defined with strictly limited built-in capabilities in order to explore what sorts of computations are theoretically possible given a particular set of language capabilities.
  
 
Each of these languages has only addition and multiplication as built-in functions, so other functions such as subtraction need to be defined in terms of these. Variables can only be natural numbers, integers zero or higher.
 
Each of these languages has only addition and multiplication as built-in functions, so other functions such as subtraction need to be defined in terms of these. Variables can only be natural numbers, integers zero or higher.

Revision as of 12:32, 9 December 2013

File Format
Name BlooP, FlooP, and GlooP
Ontology
Released 1979

BlooP, FlooP, and GlooP are programming languages introduced for instructional purposes in chapter XIII of Gödel, Escher, Bach: An Eternal Golden Braid (ISBN 978-0-465-02656-2, ISBN 0-14-017997-6), by Douglas R. Hofstader. They are defined with strictly limited built-in capabilities in order to explore what sorts of computations are theoretically possible given a particular set of language capabilities.

Each of these languages has only addition and multiplication as built-in functions, so other functions such as subtraction need to be defined in terms of these. Variables can only be natural numbers, integers zero or higher.

Contents

BlooP

BlooP supports program loops, but only with a specified maximum number of iterations (as either a constant or a variable, so the bounds can be computed), meaning that all programs are guaranteed to terminate.

FlooP

FlooP has the capabilities of BlooP, but allowing unbounded loops, which exit only when a test is passed, so an infinite loop could occur if the test never passes.

GlooP

GlooP is a hypothetical language that is even more unbounded than Floop, and thus able to compute things that are logically uncomputable in the (Turing-complete) Floop language, but it is believed that no such language is actually possible.

Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox