baum
annotate baum.1 @ 25:6f2c1f9dc08f
Added tag 0.1 for changeset 69a7cf2f0c06a5e0f0609f80c875e2ceb7ffa9c2
author | meillo@marmaro.de |
---|---|
date | Wed, 13 Feb 2008 22:04:50 +0100 |
parents | |
children | 4e60d96265f0 |
rev | line source |
---|---|
meillo@18 | 1 .TH baum 1 "2008-02-13" "baum 0.1" |
meillo@18 | 2 .SH NAME |
meillo@18 | 3 baum \- an esoteric programming language |
meillo@18 | 4 |
meillo@18 | 5 |
meillo@18 | 6 |
meillo@18 | 7 .SH SYNOPSIS |
meillo@18 | 8 .B baum |
meillo@18 | 9 [\-v]\ [\-c]\ <file> |
meillo@18 | 10 |
meillo@18 | 11 |
meillo@18 | 12 |
meillo@18 | 13 .SH DESCRIPTION |
meillo@18 | 14 .B baum |
meillo@18 | 15 is an interpreter for the baum programming language which is an experiment to create an esoteric programming language. |
meillo@18 | 16 |
meillo@18 | 17 Source code is a representation of a tree in which every node is a command or data. |
meillo@18 | 18 |
meillo@18 | 19 baum is only an experiment and the functionality is (currently) very restricted. |
meillo@18 | 20 |
meillo@18 | 21 |
meillo@18 | 22 |
meillo@18 | 23 |
meillo@18 | 24 .SH OPTIONS |
meillo@18 | 25 |
meillo@18 | 26 .TP |
meillo@18 | 27 .BI \-v |
meillo@18 | 28 Verbose output |
meillo@18 | 29 |
meillo@18 | 30 .TP |
meillo@18 | 31 .BI \-c |
meillo@18 | 32 Check source file for validity. Return 0 if source code is valid and something else otherwise. |
meillo@18 | 33 |
meillo@18 | 34 .TP |
meillo@18 | 35 .BI \-\-help |
meillo@18 | 36 Print usage information |
meillo@18 | 37 |
meillo@18 | 38 .TP |
meillo@18 | 39 .BI \-\-version |
meillo@18 | 40 Print version information |
meillo@18 | 41 |
meillo@18 | 42 |
meillo@18 | 43 |
meillo@18 | 44 |
meillo@18 | 45 |
meillo@18 | 46 |
meillo@18 | 47 .SH SOURCE CODE |
meillo@18 | 48 |
meillo@18 | 49 Source code are plain text files with one node per line representing the tree. The indention controls in which level in the tree the node is. Indention can be made with SPACE or with TAB characters. Every character means one level. |
meillo@18 | 50 |
meillo@18 | 51 Empty lines and everything vom the hash symbol (`#') to the end of the line is ignored. |
meillo@18 | 52 |
meillo@18 | 53 .B An example that echoes `42': |
meillo@18 | 54 |
meillo@18 | 55 .nf |
meillo@18 | 56 # comment |
meillo@18 | 57 print(0) |
meillo@18 | 58 sum(0) #comment |
meillo@18 | 59 number(40) |
meillo@18 | 60 number(2) |
meillo@18 | 61 .fi |
meillo@18 | 62 |
meillo@18 | 63 |
meillo@18 | 64 |
meillo@18 | 65 .SH CONCEPT |
meillo@18 | 66 |
meillo@18 | 67 baum programs are represented as nodes in a tree structure. Nodes are of specific kind and contain a value. |
meillo@18 | 68 |
meillo@18 | 69 The tree is processed recursive starting at the root node. Every node controls it's sons and should only know them; while most nodes only use their leftmost son. |
meillo@18 | 70 |
meillo@18 | 71 Each node returns a value to it's parent. The internal value of the node could be used in any useful way, but only inside the node. |
meillo@18 | 72 |
meillo@18 | 73 All values in the language (return values, expected return values and in-node values) should be of the same type, so that every combination of nodes is possible. |
meillo@18 | 74 |
meillo@18 | 75 Nodes can modify the tree, but should do this only on it's brothers or better only through it's rightmost brother. |
meillo@18 | 76 |
meillo@18 | 77 |
meillo@18 | 78 .SH ERRORS |
meillo@18 | 79 |
meillo@18 | 80 .TP |
meillo@18 | 81 .BI 1 |
meillo@18 | 82 common error |
meillo@18 | 83 |
meillo@18 | 84 .TP |
meillo@18 | 85 .BI 3 |
meillo@18 | 86 no or more than one source file given |
meillo@18 | 87 |
meillo@18 | 88 .TP |
meillo@18 | 89 .BI 4 |
meillo@18 | 90 invalid node |
meillo@18 | 91 |
meillo@18 | 92 .TP |
meillo@18 | 93 .BI 127 |
meillo@18 | 94 invalid command line options |
meillo@18 | 95 |
meillo@18 | 96 |
meillo@18 | 97 |
meillo@18 | 98 .SH BUGS |
meillo@18 | 99 Please report if you find some. |
meillo@18 | 100 |
meillo@18 | 101 |
meillo@18 | 102 .SH CREDITS |
meillo@18 | 103 Ju developed the idea of |
meillo@18 | 104 .B baum |
meillo@18 | 105 with me in a conversation. Actually it was his idea to use the tree as basic structure. |
meillo@18 | 106 |
meillo@18 | 107 |
meillo@18 | 108 |
meillo@18 | 109 .SH AUTHOR |
meillo@18 | 110 markus schnalke <meillo@marmaro.de> and julian forster |