The projects are now in git. Almost all of them.
@@ -1,14 +0,0 @@
 | 
			
		||||
#+title: aeltei
 | 
			
		||||
#&summary
 | 
			
		||||
A curses frontend for fluidsynth
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
#+license: agpl 3+, program
 | 
			
		||||
 | 
			
		||||
* aeltei
 | 
			
		||||
 | 
			
		||||
aeltei is a virtual multi instrument environment. [[aeltei-0.1.0.tar.gz][Download]].
 | 
			
		||||
 | 
			
		||||
aeltei can also be found in the [[http://pypi.python.org/pypi/aeltei][Python Package Index]].
 | 
			
		||||
 | 
			
		||||
aeltei has its code at Gitorious; see [[http://gitorious.org/aeltei][http://gitorious.org/aeltei]].
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 58 KiB  | 
| 
		 Before Width: | Height: | Size: 289 KiB  | 
| 
		 Before Width: | Height: | Size: 48 KiB  | 
| 
		 Before Width: | Height: | Size: 197 KiB  | 
| 
		 Before Width: | Height: | Size: 3.3 KiB  | 
| 
		 Before Width: | Height: | Size: 41 KiB  | 
| 
		 Before Width: | Height: | Size: 6.0 KiB  | 
| 
		 Before Width: | Height: | Size: 199 KiB  | 
| 
		 Before Width: | Height: | Size: 5.8 KiB  | 
| 
		 Before Width: | Height: | Size: 106 KiB  | 
| 
		 Before Width: | Height: | Size: 8.7 KiB  | 
| 
		 Before Width: | Height: | Size: 436 KiB  | 
| 
		 Before Width: | Height: | Size: 3.8 KiB  | 
| 
		 Before Width: | Height: | Size: 43 KiB  | 
| 
		 Before Width: | Height: | Size: 5.7 KiB  | 
| 
		 Before Width: | Height: | Size: 151 KiB  | 
| 
		 Before Width: | Height: | Size: 4.8 KiB  | 
| 
		 Before Width: | Height: | Size: 41 KiB  | 
| 
		 Before Width: | Height: | Size: 4.4 KiB  | 
| 
		 Before Width: | Height: | Size: 106 KiB  | 
| 
		 Before Width: | Height: | Size: 8.2 KiB  | 
| 
		 Before Width: | Height: | Size: 254 KiB  | 
| 
		 Before Width: | Height: | Size: 7.5 KiB  | 
| 
		 Before Width: | Height: | Size: 167 KiB  | 
| 
		 Before Width: | Height: | Size: 44 KiB  | 
| 
		 Before Width: | Height: | Size: 309 KiB  | 
| 
		 Before Width: | Height: | Size: 8.8 KiB  | 
| 
		 Before Width: | Height: | Size: 678 KiB  | 
| 
		 Before Width: | Height: | Size: 14 KiB  | 
| 
		 Before Width: | Height: | Size: 52 KiB  | 
| 
		 Before Width: | Height: | Size: 28 KiB  | 
| 
		 Before Width: | Height: | Size: 104 KiB  | 
| 
		 Before Width: | Height: | Size: 52 KiB  | 
| 
		 Before Width: | Height: | Size: 257 KiB  | 
| 
		 Before Width: | Height: | Size: 50 KiB  | 
| 
		 Before Width: | Height: | Size: 159 KiB  | 
| 
		 Before Width: | Height: | Size: 72 KiB  | 
| 
		 Before Width: | Height: | Size: 365 KiB  | 
| 
		 Before Width: | Height: | Size: 5.2 KiB  | 
| 
		 Before Width: | Height: | Size: 34 KiB  | 
| 
		 Before Width: | Height: | Size: 8.7 KiB  | 
| 
		 Before Width: | Height: | Size: 353 KiB  | 
@@ -1,19 +0,0 @@
 | 
			
		||||
#+title: alart images
 | 
			
		||||
#&summary
 | 
			
		||||
Art from alart
 | 
			
		||||
#&
 | 
			
		||||
#+license: cc0
 | 
			
		||||
#&fullpage
 | 
			
		||||
 | 
			
		||||
* alart images
 | 
			
		||||
 | 
			
		||||
Click on the images to go to their SVG versions.
 | 
			
		||||
 | 
			
		||||
#++exec
 | 
			
		||||
#+BEGIN_SRC python
 | 
			
		||||
  root = misc.macrog('pathdir')
 | 
			
		||||
  for f in os.listdir(root):
 | 
			
		||||
      if os.path.isfile(os.path.join(root, f)) and f.endswith('.png'):
 | 
			
		||||
          base = f[:-4]
 | 
			
		||||
          print("<a href='{base}.svg'><img src='{base}.png' alt='{base}' /></a>".format(base=base))
 | 
			
		||||
#+END_SRC
 | 
			
		||||
@@ -1,28 +0,0 @@
 | 
			
		||||
#+title: alart
 | 
			
		||||
#&summary
 | 
			
		||||
A pseudo-random art generator
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
#+license: gpl 3+, program
 | 
			
		||||
 | 
			
		||||
* alart
 | 
			
		||||
 | 
			
		||||
#&img;url=images/art0.png, alt=art, center
 | 
			
		||||
 | 
			
		||||
alart is a pseudo-random art generator. It generates silhouettes.
 | 
			
		||||
 | 
			
		||||
#&+large,center,classes=notice
 | 
			
		||||
[[images/][See example art]].
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
alart is licensed under the GNU General Public License, version 3 or any later
 | 
			
		||||
version. The current version of alart is 0.1.1 (codename: "Fox").
 | 
			
		||||
 | 
			
		||||
[[alart-0.1.1.tar.gz][Download gzipped tarball]].
 | 
			
		||||
 | 
			
		||||
alart can also be found in the [[http://pypi.python.org/pypi/alart][Python Package Index]].
 | 
			
		||||
 | 
			
		||||
alart has its code at Gitorious; see [[http://gitorious.org/alart][http://gitorious.org/alart]].
 | 
			
		||||
 | 
			
		||||
Older versions: [[alart-0.1.0.tar.gz][v0.1.0 ("Ablaze")]].
 | 
			
		||||
 | 
			
		||||
@@ -1,25 +0,0 @@
 | 
			
		||||
#+title: Alp
 | 
			
		||||
#&summary
 | 
			
		||||
A new time unit and a Python library/command-line utility
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
#+license: gpl 3+, program
 | 
			
		||||
 | 
			
		||||
* The Alp Project
 | 
			
		||||
 | 
			
		||||
The Alp is a new time unit. It is superior to the traditional units in many
 | 
			
		||||
ways. It is, however, too complex to be explained in a short amount of space.
 | 
			
		||||
 | 
			
		||||
** Documentation and examples
 | 
			
		||||
Currently, [[alp-documentation-0.1.0.pdf][this PDF file]] is the documentation. Alp documentation has a git
 | 
			
		||||
repository at Gitorious: see [[http://gitorious.org/Alp-doc][http://gitorious.org/Alp-doc]].
 | 
			
		||||
 | 
			
		||||
** Software
 | 
			
		||||
You can download the newest Alp program (v0.1.1, both a command-line utility
 | 
			
		||||
and a Python library, released under the GPLv3+) [[Alp-0.1.1.tar.gz][here]] (older versions: [[Alp-0.1.0.tar.gz][0.1.0]].
 | 
			
		||||
 | 
			
		||||
Alp software can also be found in the [[http://pypi.python.org/pypi/Alp][Python Package Index]].
 | 
			
		||||
 | 
			
		||||
Alp software also has a git repository at Gitorious: see
 | 
			
		||||
[[http://gitorious.org/Alp][http://gitorious.org/Alp]].
 | 
			
		||||
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 38 KiB  | 
@@ -1,121 +0,0 @@
 | 
			
		||||
#+title: an5w
 | 
			
		||||
#&summary
 | 
			
		||||
A PHP script for simple surveys
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
#+license: wtf, program
 | 
			
		||||
 | 
			
		||||
* an5w
 | 
			
		||||
#&img;url=art.png,title=Hmm..
 | 
			
		||||
 | 
			
		||||
an5w (pronounced "answ" as in "answer") is a simple PHP program for creating
 | 
			
		||||
online surveys. It consists of just two PHP files, one that serves the user and
 | 
			
		||||
one that shows the answers.
 | 
			
		||||
 | 
			
		||||
** Download
 | 
			
		||||
 | 
			
		||||
[[an5w.tar.gz][Here]]
 | 
			
		||||
 | 
			
		||||
** Documentation
 | 
			
		||||
You will not find any documentation in the an5w tarball --- not even a single
 | 
			
		||||
readme. When you've extracted the an5w directory from the tarball, put it in a
 | 
			
		||||
place your webserver recognizes. That should work.
 | 
			
		||||
 | 
			
		||||
The code has no comments, basically because it's scaringly simple and extremely
 | 
			
		||||
short. an5w is released under the WTFPL&acro='Do What The Fuck You Want To
 | 
			
		||||
Public License', as published by Sam Hocevar [[http://sam.zoy.org/wtfpl/][here]].
 | 
			
		||||
 | 
			
		||||
A raw an5w directory has the following files and directories (*answers*
 | 
			
		||||
and *art* are directories):
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
*answers* button footer
 | 
			
		||||
*index.php* style.css wrapper art done header *questions* title
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
However, only the ones in bold are actually necessary. You can remove
 | 
			
		||||
the rest without an5w failing. In the 'answers' directory, it's the same:
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
*index.php* style.css
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
Again, only the bold ones are needed. In this case, you only need 'index.php'.
 | 
			
		||||
 | 
			
		||||
*** Description of files
 | 
			
		||||
 | 
			
		||||
#++pre
 | 
			
		||||
#+BEGIN_SRC
 | 
			
		||||
answers/index.php: 
 | 
			
		||||
  The program that shows answers
 | 
			
		||||
 | 
			
		||||
answers/style.css:
 | 
			
		||||
  CSS styles
 | 
			
		||||
 | 
			
		||||
button:
 | 
			
		||||
  The text of the submit button. Default is "Submit".
 | 
			
		||||
 | 
			
		||||
footer:
 | 
			
		||||
  Text to display on the bottom of the page. Default is nothing.
 | 
			
		||||
 | 
			
		||||
index.php:
 | 
			
		||||
  The main program
 | 
			
		||||
 | 
			
		||||
style.css:
 | 
			
		||||
  CSS styles
 | 
			
		||||
 | 
			
		||||
wrapper:
 | 
			
		||||
  The HTML element(s) that wrap everything else. Default is
 | 
			
		||||
  "<div id='wrapper'>TEXT</div>\n" (where TEXT is the actual content).
 | 
			
		||||
 | 
			
		||||
art/art.xcf:
 | 
			
		||||
  Promotional question marks
 | 
			
		||||
 | 
			
		||||
art/art-small.png:
 | 
			
		||||
  Promotional question marks in mini version
 | 
			
		||||
 | 
			
		||||
done:
 | 
			
		||||
  Text to display when the survey has been completed.
 | 
			
		||||
 | 
			
		||||
header:
 | 
			
		||||
  Text to display on the top of the survey page.
 | 
			
		||||
 | 
			
		||||
questions:
 | 
			
		||||
  The actual questions. See the *markup* section below.
 | 
			
		||||
 | 
			
		||||
title:
 | 
			
		||||
  The title of the survey. Will only be displayed on the titlebar of the page.
 | 
			
		||||
#+END_SRC
 | 
			
		||||
 | 
			
		||||
*** Markup
 | 
			
		||||
The syntax used in the 'questions' file is really quite simple. It looks like
 | 
			
		||||
this:
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
Question
 | 
			
		||||
Type of input (in form of text, multiple choices, etc.)
 | 
			
		||||
 | 
			
		||||
Another question
 | 
			
		||||
Type of input
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
An example:
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
To what extent do you get annoyed when people attack you with pencils?
 | 
			
		||||
[]
 | 
			
		||||
 | 
			
		||||
Why are cows unable to fly (in your own opinion)?
 | 
			
		||||
[]
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
Currently (as of version 0.001), only the '[]' input type is supported. '[]' =
 | 
			
		||||
<textarea>.
 | 
			
		||||
 | 
			
		||||
A question can only take up one line. If you need a newline, use a <br /> tag
 | 
			
		||||
instead.
 | 
			
		||||
 | 
			
		||||
To see answers, just visit answers/index.php in your web browser.
 | 
			
		||||
 | 
			
		||||
*** Details
 | 
			
		||||
an5w does not store data a database. It uses text files.
 | 
			
		||||
@@ -1,33 +0,0 @@
 | 
			
		||||
#+title: beepfun
 | 
			
		||||
#&summary
 | 
			
		||||
How to use a computer's beep feature for music...
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa
 | 
			
		||||
#+license: gpl 3, program
 | 
			
		||||
#+startup: showall
 | 
			
		||||
 | 
			
		||||
Have you ever wished you could use your computer's beep feature for something
 | 
			
		||||
greater than beeping? How you could create sounds of beeps without strange
 | 
			
		||||
shell scripts generating =beep=-applicable arguments and then calling =beep=?
 | 
			
		||||
 | 
			
		||||
* beepfun
 | 
			
		||||
 | 
			
		||||
With beepfun, you can write your music in human-readable text files and let
 | 
			
		||||
beepfun play them:
 | 
			
		||||
 | 
			
		||||
: beepfun melody.beep
 | 
			
		||||
 | 
			
		||||
You can also combine files:
 | 
			
		||||
 | 
			
		||||
: beepfun melody0 melody1
 | 
			
		||||
 | 
			
		||||
and beepfun will happily merge the two files in a playable manner.
 | 
			
		||||
 | 
			
		||||
Note that beepfun loops the files. To stop beepfun, kill it.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
** Code
 | 
			
		||||
 | 
			
		||||
: $ git clone git://metanohi.name/beepfun
 | 
			
		||||
 | 
			
		||||
Not quite finished yet.
 | 
			
		||||
@@ -1,86 +0,0 @@
 | 
			
		||||
            ▄▄▄▄▄    ▀   ▄               █   ▄█▀█▄ ▀▀▄ ▀▀█▀▀ ▄▀▀▀▀█
 | 
			
		||||
            █    █ ▄▄▄ ▄▄█▄▄  ▄▄▄       █    █   █   █   █   █    █
 | 
			
		||||
            █▄▄▄▄▀   █   █   █▀ ▀█     █     █▄ ▄█   █   █   ▄▀▀▀▀█
 | 
			
		||||
            █    █   █   █   █   █    █       ▀▀▀  ▀▀█▀▀ ▀▀▀ █    █
 | 
			
		||||
            █▄▄▄▄▀ ▄▄█▄▄ ▀▄▄ ▀█▄█▀   █               ▀   ▄    ▀▀▀▀▀
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Bito is a programming language that aims to be easy to work with. Bito only
 | 
			
		||||
accepts ones and zeroes. All other characters will be ignored. A command in
 | 
			
		||||
Bito consists of two parts, the first part consisting of 1 bit and the second
 | 
			
		||||
part consisting of three bits. All first parts must be written from left to
 | 
			
		||||
right, while all last parts must be written from right to left. A last part
 | 
			
		||||
consisting of 011 must thus be written 110.
 | 
			
		||||
Bito saves data in a list containing an infinite numbers of memory cells. A
 | 
			
		||||
cell can hold only any number above or equal to 0. There are no limits on how
 | 
			
		||||
large numbers can be.
 | 
			
		||||
 | 
			
		||||
Tip: Writing comments with ones and zeroes will make code more difficult to
 | 
			
		||||
     understand. Try to replace ones with uppercase "i"s and zeroes with
 | 
			
		||||
     uppercase "o"s.
 | 
			
		||||
 | 
			
		||||
Available commands:
 | 
			
		||||
0 xxx Append xxx to current memory cell (as a string)
 | 
			
		||||
1 000 Print current number
 | 
			
		||||
1 001 Print current number as ASCII
 | 
			
		||||
1 010 Increment memory cell index
 | 
			
		||||
1 011 Decrement memory cell index
 | 
			
		||||
1 100 Start loop
 | 
			
		||||
1 101 Restart or end loop
 | 
			
		||||
1 110 Add value of previous cell to current cell (as an integer)
 | 
			
		||||
1 111 Write input from stdin to next cells and write length to current cell
 | 
			
		||||
 | 
			
		||||
Trying to print an unset number will result in an error. Trying to print a
 | 
			
		||||
number not in the ASCII range as ASCII text will also result in an error.
 | 
			
		||||
Loops will run the times specified by the current cell. If the value of the
 | 
			
		||||
current cell is either unset, 0 or 1, the loop will run only once, i.e. it will
 | 
			
		||||
not act as a loop. Specifying the value 2 or above will thereby make it a loop.
 | 
			
		||||
Because infinite loops are not possible in Bito, Bito does not suffer from the
 | 
			
		||||
Halting Problem.
 | 
			
		||||
Ending a loop when no loop has been started will not result in an error, nor
 | 
			
		||||
will starting a loop without ending it do so (though the loop will, in those
 | 
			
		||||
cases, not function as a loop). Also, nested loops cannot exist. When a loop
 | 
			
		||||
has been started, all subsequent attempt to start a new loop will be ignored,
 | 
			
		||||
until the loop has ended.
 | 
			
		||||
Trying to add the value of a previous cell to the current cell will result in
 | 
			
		||||
an error if the current cell is unset. If a previous cell is unset, its value
 | 
			
		||||
is -1, which makes it ideal for use in subtracting numbers.
 | 
			
		||||
 | 
			
		||||
How to print an "N" (ASCII 78, binary ASCII 1001110):
 | 
			
		||||
Short version:
 | 
			
		||||
0001100011100100
 | 
			
		||||
Long version:
 | 
			
		||||
0 Current cell: OOI
 | 
			
		||||
0 Current cell: OOIOOI
 | 
			
		||||
0 Current cell: OOIOOIIIO (i.e. IOOIIIO)
 | 
			
		||||
1 Print ASCII 78 (N)
 | 
			
		||||
100
 | 
			
		||||
011
 | 
			
		||||
100
 | 
			
		||||
100
 | 
			
		||||
 | 
			
		||||
Saving ones and zeroes as ASCII is meaningless, as it takes up much more space
 | 
			
		||||
than needed. It is therefore recommended to convert every 8 characters into a
 | 
			
		||||
byte. This will greatly reduce filesizes. If the number of characters in a file
 | 
			
		||||
isn't directly dividable with 8 (4, 12, 132, etc.), just append a command that
 | 
			
		||||
does not affect the the script too much -- like ending a loop (1 101). If this
 | 
			
		||||
command is called outside a loop, nothing will happen.
 | 
			
		||||
The above N-printing program would, in byte-form, take up two bytes instead of
 | 
			
		||||
its current 16 bytes. It would save the first byte with 24 as its value and the
 | 
			
		||||
second byte with 224 as its value (this is theoretically speaking -- as
 | 
			
		||||
compressed Bito files are basically still text files, it is normal to have a
 | 
			
		||||
newline character appended at the end of a file).
 | 
			
		||||
 | 
			
		||||
To run Bito programs, you can use the bitopret.py interpreter found in the
 | 
			
		||||
'interpreter' directory. This interpreter also functions as a Bito file packer,
 | 
			
		||||
i.e. it can compress Bito files.
 | 
			
		||||
You will find a set of example programs in the 'examples' subdirectory.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
The Bito programming language was created by Niels Serup (metanohi.org). You
 | 
			
		||||
can contact Niels a <ns@metanohi.name>.
 | 
			
		||||
Updates to Bito are likely to appear at <http://metanohi.org/projects/bito/>.
 | 
			
		||||
 | 
			
		||||
This readme was written by Niels and was put into the public domain by him.
 | 
			
		||||
Date: 27 July 2009
 | 
			
		||||
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 82 KiB  | 
@@ -1,691 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   width="154"
 | 
			
		||||
   height="60"
 | 
			
		||||
   id="svg3029"
 | 
			
		||||
   sodipodi:version="0.32"
 | 
			
		||||
   inkscape:version="0.46"
 | 
			
		||||
   version="1.0"
 | 
			
		||||
   sodipodi:docname="bito-logo.svg"
 | 
			
		||||
   inkscape:output_extension="org.inkscape.output.svg.inkscape"
 | 
			
		||||
   inkscape:export-filename="/home/niels/Programming/Esoteric/Bito/bito-logo.png"
 | 
			
		||||
   inkscape:export-xdpi="344.80521"
 | 
			
		||||
   inkscape:export-ydpi="344.80521">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs3031">
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       sodipodi:type="inkscape:persp3d"
 | 
			
		||||
       inkscape:vp_x="0 : 526.18109 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_z="744.09448 : 526.18109 : 1"
 | 
			
		||||
       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
 | 
			
		||||
       id="perspective3037" />
 | 
			
		||||
  </defs>
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     id="base"
 | 
			
		||||
     pagecolor="#ffffff"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     gridtolerance="10000"
 | 
			
		||||
     guidetolerance="10"
 | 
			
		||||
     objecttolerance="10"
 | 
			
		||||
     inkscape:pageopacity="0.0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:zoom="7.4805195"
 | 
			
		||||
     inkscape:cx="77"
 | 
			
		||||
     inkscape:cy="30"
 | 
			
		||||
     inkscape:document-units="px"
 | 
			
		||||
     inkscape:current-layer="mainlayer"
 | 
			
		||||
     showgrid="false"
 | 
			
		||||
     inkscape:window-width="1255"
 | 
			
		||||
     inkscape:window-height="975"
 | 
			
		||||
     inkscape:window-x="24"
 | 
			
		||||
     inkscape:window-y="0" />
 | 
			
		||||
  <g
 | 
			
		||||
     inkscape:label="Layer 1"
 | 
			
		||||
     inkscape:groupmode="layer"
 | 
			
		||||
     id="layer1">
 | 
			
		||||
    <g
 | 
			
		||||
       id="mainlayer"
 | 
			
		||||
       font-size="10"
 | 
			
		||||
       style="font-size:10px;font-family:monospace"
 | 
			
		||||
       transform="translate(2.5,-20)">
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
<text
 | 
			
		||||
   xml:space="preserve"
 | 
			
		||||
   style="font-size:7.65052413999999992px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#51797a;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:DejaVu Sans Mono;-inkscape-font-specification:DejaVu Sans Mono;opacity:0.9"
 | 
			
		||||
   x="-2.8715544"
 | 
			
		||||
   y="26.73325"
 | 
			
		||||
   id="text3210"
 | 
			
		||||
   transform="scale(1.0527564,0.9498873)"><tspan
 | 
			
		||||
     sodipodi:role="line"
 | 
			
		||||
     x="-2.8715544"
 | 
			
		||||
     y="26.73325"
 | 
			
		||||
     id="tspan3254">00100010001000100010001001001000</tspan><tspan
 | 
			
		||||
     sodipodi:role="line"
 | 
			
		||||
     x="-2.8715544"
 | 
			
		||||
     y="36.296406"
 | 
			
		||||
     id="tspan3283">10001000100010001001111110110110</tspan><tspan
 | 
			
		||||
     sodipodi:role="line"
 | 
			
		||||
     x="-2.8715544"
 | 
			
		||||
     y="45.859558"
 | 
			
		||||
     id="tspan3285">01100011011000100001001000101010</tspan><tspan
 | 
			
		||||
     sodipodi:role="line"
 | 
			
		||||
     x="-2.8715544"
 | 
			
		||||
     y="55.422714"
 | 
			
		||||
     id="tspan3287">01100010001101100010001101100010</tspan><tspan
 | 
			
		||||
     sodipodi:role="line"
 | 
			
		||||
     x="-2.8715544"
 | 
			
		||||
     y="64.98587"
 | 
			
		||||
     id="tspan3289">11110110001000110101000000101011</tspan><tspan
 | 
			
		||||
     sodipodi:role="line"
 | 
			
		||||
     x="-2.8715544"
 | 
			
		||||
     y="74.549026"
 | 
			
		||||
     id="tspan3291">10101000101111011000100100111000</tspan><tspan
 | 
			
		||||
     sodipodi:role="line"
 | 
			
		||||
     x="-2.8715544"
 | 
			
		||||
     y="84.112183"
 | 
			
		||||
     id="tspan3293">10001101100010001001100010100001</tspan></text>
 | 
			
		||||
<g
 | 
			
		||||
   id="g4065"
 | 
			
		||||
   style="fill:#69578b;fill-opacity:1">
 | 
			
		||||
  <g
 | 
			
		||||
     style="opacity:0.84999999999999998;fill:#69578b;fill-opacity:1"
 | 
			
		||||
     transform="matrix(1.1476463,0,0,1.1554864,-2.6476463,-12.283424)"
 | 
			
		||||
     id="g2947">
 | 
			
		||||
    <rect
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="48.5"
 | 
			
		||||
       width="6"
 | 
			
		||||
       height="10"
 | 
			
		||||
       id="rect193" />
 | 
			
		||||
    <rect
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="58.5"
 | 
			
		||||
       width="6"
 | 
			
		||||
       height="10"
 | 
			
		||||
       id="rect249" />
 | 
			
		||||
    <rect
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="68.5"
 | 
			
		||||
       width="6"
 | 
			
		||||
       height="10"
 | 
			
		||||
       id="rect305" />
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="1.0976562"
 | 
			
		||||
       y="36.5"
 | 
			
		||||
       id="text453">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="7.0976562"
 | 
			
		||||
       y="36.5"
 | 
			
		||||
       id="text455">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="13.097656"
 | 
			
		||||
       y="36.5"
 | 
			
		||||
       id="text457">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="19.097656"
 | 
			
		||||
       y="36.5"
 | 
			
		||||
       id="text459">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="25.097656"
 | 
			
		||||
       y="36.5"
 | 
			
		||||
       id="text461">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="36.5"
 | 
			
		||||
       id="text463">▀</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="79.305992"
 | 
			
		||||
       y="36.5"
 | 
			
		||||
       id="text465">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="1.0976562"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text467">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="31.097654"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text469">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="43.097656"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text471">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="49.097656"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text473">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text475">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="67.305992"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text477">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="73.305992"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text479">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="79.305992"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text481">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="85.305992"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text483">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="91.305992"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text485">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="109.32681"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text487">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="115.32681"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text489">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="121.32681"
 | 
			
		||||
       y="46.5"
 | 
			
		||||
       id="text491">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="1.0976562"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text493">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="7.0976562"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text495">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="13.097656"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text497">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="19.097656"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text499">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="25.097656"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text501">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="31.097654"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text503">▀</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text505">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="79.305992"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text507">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="103.32681"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text509">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="109.32681"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text511">▀</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="121.32681"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text513">▀</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="127.32682"
 | 
			
		||||
       y="56.5"
 | 
			
		||||
       id="text515">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="1.0976562"
 | 
			
		||||
       y="66.5"
 | 
			
		||||
       id="text517">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="31.097654"
 | 
			
		||||
       y="66.5"
 | 
			
		||||
       id="text519">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="66.5"
 | 
			
		||||
       id="text521">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="79.305992"
 | 
			
		||||
       y="66.5"
 | 
			
		||||
       id="text523">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="103.32681"
 | 
			
		||||
       y="66.5"
 | 
			
		||||
       id="text525">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="127.32682"
 | 
			
		||||
       y="66.5"
 | 
			
		||||
       id="text527">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="1.0976562"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text529">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="7.0976562"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text531">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="13.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text533">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="19.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text535">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="25.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text537">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="31.097654"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text539">▀</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="43.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text541">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="49.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text543">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="55.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text545">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="61.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text547">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="67.097656"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text549">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="79.305992"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text551">▀</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="85.305992"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text553">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="91.305992"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text555">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="103.32681"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text557">▀</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="109.32681"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text559">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="115.32681"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text561">▄</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="121.32681"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text563">█</text>
 | 
			
		||||
    <text
 | 
			
		||||
       style="fill:#69578b;fill-opacity:1"
 | 
			
		||||
       x="127.32682"
 | 
			
		||||
       y="76.5"
 | 
			
		||||
       id="text565">▀</text>
 | 
			
		||||
  </g>
 | 
			
		||||
</g>
 | 
			
		||||
 | 
			
		||||
 </g>
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 11 KiB  | 
@@ -1,142 +0,0 @@
 | 
			
		||||
#+title: Bito
 | 
			
		||||
#&summary
 | 
			
		||||
A poor but simple programming language along with an interpreter
 | 
			
		||||
#&
 | 
			
		||||
#+license: cc0, text
 | 
			
		||||
#+license: bysa, logo
 | 
			
		||||
#+license: gpl 3+, interpreter
 | 
			
		||||
 | 
			
		||||
* Bito
 | 
			
		||||
 | 
			
		||||
#&img;url=img/bito-logo.png,center
 | 
			
		||||
 | 
			
		||||
*Bito* is a programming language. I already wrote a readme about it, which you
 | 
			
		||||
can either see below or download [[README][here]]. To run Bito
 | 
			
		||||
programs, you will need a Bito interpreter.
 | 
			
		||||
 | 
			
		||||
[[bitopret.tar.gz][Download Bito interpreter, Bito interpreter README and Bito code examples]].
 | 
			
		||||
 | 
			
		||||
** Bito README
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
            ▄▄▄▄▄    ▀   ▄               █   ▄█▀█▄ ▀▀▄ ▀▀█▀▀ ▄▀▀▀▀█
 | 
			
		||||
            █    █ ▄▄▄ ▄▄█▄▄  ▄▄▄       █    █   █   █   █   █    █
 | 
			
		||||
            █▄▄▄▄▀   █   █   █▀ ▀█     █     █▄ ▄█   █   █   ▄▀▀▀▀█
 | 
			
		||||
            █    █   █   █   █   █    █       ▀▀▀  ▀▀█▀▀ ▀▀▀ █    █
 | 
			
		||||
            █▄▄▄▄▀ ▄▄█▄▄ ▀▄▄ ▀█▄█▀   █               ▀   ▄    ▀▀▀▀▀
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Bito is a programming language that aims to be easy to work with. Bito only
 | 
			
		||||
accepts ones and zeroes. All other characters will be ignored. A command in
 | 
			
		||||
Bito consists of two parts, the first part consisting of 1 bit and the second
 | 
			
		||||
part consisting of three bits. All first parts must be written from left to
 | 
			
		||||
right, while all last parts must be written from right to left. A last part
 | 
			
		||||
consisting of 011 must thus be written 110.
 | 
			
		||||
Bito saves data in a list containing an infinite numbers of memory cells. A
 | 
			
		||||
cell can hold only any number above or equal to 0. There are no limits on how
 | 
			
		||||
large numbers can be.
 | 
			
		||||
 | 
			
		||||
Tip: Writing comments with ones and zeroes will make code more difficult to
 | 
			
		||||
     understand. Try to replace ones with uppercase "i"s and zeroes with
 | 
			
		||||
     uppercase "o"s.
 | 
			
		||||
 | 
			
		||||
Available commands:
 | 
			
		||||
0 xxx Append xxx to current memory cell (as a string)
 | 
			
		||||
1 000 Print current number
 | 
			
		||||
1 001 Print current number as ASCII
 | 
			
		||||
1 010 Increment memory cell index
 | 
			
		||||
1 011 Decrement memory cell index
 | 
			
		||||
1 100 Start loop
 | 
			
		||||
1 101 Restart or end loop
 | 
			
		||||
1 110 Add value of previous cell to current cell (as an integer)
 | 
			
		||||
1 111 Write input from stdin to next cells and write length to current cell
 | 
			
		||||
 | 
			
		||||
Trying to print an unset number will result in an error. Trying to print a
 | 
			
		||||
number not in the ASCII range as ASCII text will also result in an error.
 | 
			
		||||
Loops will run the times specified by the current cell. If the value of the
 | 
			
		||||
current cell is either unset, 0 or 1, the loop will run only once, i.e. it will
 | 
			
		||||
not act as a loop. Specifying the value 2 or above will thereby make it a loop.
 | 
			
		||||
Because infinite loops are not possible in Bito, Bito does not suffer from the
 | 
			
		||||
Halting Problem.
 | 
			
		||||
Ending a loop when no loop has been started will not result in an error, nor
 | 
			
		||||
will starting a loop without ending it do so (though the loop will, in those
 | 
			
		||||
cases, not function as a loop). Also, nested loops cannot exist. When a loop
 | 
			
		||||
has been started, all subsequent attempt to start a new loop will be ignored,
 | 
			
		||||
until the loop has ended.
 | 
			
		||||
Trying to add the value of a previous cell to the current cell will result in
 | 
			
		||||
an error if the current cell is unset. If a previous cell is unset, its value
 | 
			
		||||
is -1, which makes it ideal for use in subtracting numbers.
 | 
			
		||||
 | 
			
		||||
How to print an "N" (ASCII 78, binary ASCII 1001110):
 | 
			
		||||
Short version:
 | 
			
		||||
0001100011100100
 | 
			
		||||
Long version:
 | 
			
		||||
0 Current cell: OOI
 | 
			
		||||
0 Current cell: OOIOOI
 | 
			
		||||
0 Current cell: OOIOOIIIO (i.e. IOOIIIO)
 | 
			
		||||
1 Print ASCII 78 (N)
 | 
			
		||||
100
 | 
			
		||||
011
 | 
			
		||||
100
 | 
			
		||||
100
 | 
			
		||||
 | 
			
		||||
Saving ones and zeroes as ASCII is meaningless, as it takes up much more space
 | 
			
		||||
than needed. It is therefore recommended to convert every 8 characters into a
 | 
			
		||||
byte. This will greatly reduce filesizes. If the number of characters in a file
 | 
			
		||||
isn't directly dividable with 8 (4, 12, 132, etc.), just append a command that
 | 
			
		||||
does not affect the the script too much --- like ending a loop (1 101). If this
 | 
			
		||||
command is called outside a loop, nothing will happen.
 | 
			
		||||
The above N-printing program would, in byte-form, take up two bytes instead of
 | 
			
		||||
its current 16 bytes. It would save the first byte with 24 as its value and the
 | 
			
		||||
second byte with 224 as its value (this is theoretically speaking -- as
 | 
			
		||||
compressed Bito files are basically still text files, it is normal to have a
 | 
			
		||||
newline character appended at the end of a file).
 | 
			
		||||
 | 
			
		||||
To run Bito programs, you can use the bitopret.py interpreter found in the
 | 
			
		||||
'interpreter' directory. This interpreter also functions as a Bito file packer,
 | 
			
		||||
i.e. it can compress Bito files.
 | 
			
		||||
You will find a set of example programs in the 'examples' subdirectory.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
The Bito programming language was created by Niels Serup (metanohi.org). You
 | 
			
		||||
can contact Niels at <[[mailto:ns@metanohi.name][ns@metanohi.name]]>.
 | 
			
		||||
Updates to Bito are likely to appear at <[[http://metanohi.name/projects/bito/]]>.
 | 
			
		||||
 | 
			
		||||
This readme was written by Niels and was put into the public domain by him.
 | 
			
		||||
Date: 27 July 2009
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
** Bito interpreter README
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
                █       ▀    ▄                             ▄
 | 
			
		||||
                █▄▄▄  ▄▄▄  ▄▄█▄▄  ▄▄▄  ▄▄▄▄  ▄ ▄▄   ▄▄▄  ▄▄█▄▄
 | 
			
		||||
                █▀ ▀█   █    █   █▀ ▀█ █▀ ▀█ █▀  ▀ █▀  █   █
 | 
			
		||||
                █   █   █    █   █   █ █   █ █     █▀▀▀▀   █
 | 
			
		||||
                ██▄█▀ ▄▄█▄▄  ▀▄▄ ▀█▄█▀ ██▄█▀ █     ▀█▄▄▀   ▀▄▄
 | 
			
		||||
                                       █
 | 
			
		||||
             An interpreter for the Bi ▀ to programming language
 | 
			
		||||
 | 
			
		||||
Though a creating a compiler might have been the best way to be able to run
 | 
			
		||||
files written in the Bito programming language, it's easier to create an
 | 
			
		||||
interpreter. The standard interpreter for Bito files, bitopret, works
 | 
			
		||||
flawlessly, though naturally it's not lightning fast. To use bitopret, run
 | 
			
		||||
bitopret.py. If you run bitopret.py without any arguments, it will display some
 | 
			
		||||
hopefully historically helpful help.
 | 
			
		||||
 | 
			
		||||
To understand the Bito language, you should have a look at the original README
 | 
			
		||||
describing it. You can fetch a copy at <[[http://metanohi.name/projects/bito/]]>.
 | 
			
		||||
 | 
			
		||||
There are example programs in the 'examples' directory.
 | 
			
		||||
 | 
			
		||||
Niels Serup (metanohi.name) created this interpreter along with the Bito
 | 
			
		||||
language. You can contact Niels at <[[mailto:ns@metanohi.name][ns@metanohi.name]]>.
 | 
			
		||||
 | 
			
		||||
Version information:
 | 
			
		||||
bitopret 0.9
 | 
			
		||||
Copyright (C) 2009 Niels Serup
 | 
			
		||||
License GPLv3+: GNU GPL version 3 or later <[[http://gnu.org/licenses/gpl.html]]>
 | 
			
		||||
This is free software: you are free to change and redistribute it.
 | 
			
		||||
There is NO WARRANTY, to the extent permitted by law.
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
@@ -1,24 +0,0 @@
 | 
			
		||||
#+title: bitposi
 | 
			
		||||
#&summary
 | 
			
		||||
A library/tool for extracting data from one or more sources for later
 | 
			
		||||
generation of new, similar data
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, text
 | 
			
		||||
#+license: agpl 3+, program
 | 
			
		||||
#&toc
 | 
			
		||||
 | 
			
		||||
* bitposi
 | 
			
		||||
 | 
			
		||||
bitposi will be a library/tool for extracting data from one or more sources for
 | 
			
		||||
later generation of new, similar data. For example, bitposi will be able to
 | 
			
		||||
read a gigabyte of English text and then write out a gigabyte of text very
 | 
			
		||||
similar to English. It will do this by saving and loading bit position
 | 
			
		||||
data.
 | 
			
		||||
 | 
			
		||||
It doesn’t quite work yet.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
bitposi is available under AGPLv3+.
 | 
			
		||||
 | 
			
		||||
Development: [[http://gitorious.org/bitposi]].
 | 
			
		||||
 | 
			
		||||
@@ -1,15 +0,0 @@
 | 
			
		||||
#+title: bolg
 | 
			
		||||
#&summary
 | 
			
		||||
An extended Python glob module.
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, text
 | 
			
		||||
#+license: agpl 3+, program
 | 
			
		||||
 | 
			
		||||
* bolg
 | 
			
		||||
 | 
			
		||||
{bolg globs. [[bolg-0.1.0.tar.gz][Download]].}&huge
 | 
			
		||||
 | 
			
		||||
bolg can also be found in the [[http://pypi.python.org/pypi/bolg][Python Package Index]].
 | 
			
		||||
 | 
			
		||||
bolg has its code at Gitorious; see [[http://gitorious.org/bolg]].
 | 
			
		||||
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 24 KiB  | 
@@ -1,21 +0,0 @@
 | 
			
		||||
#+title: CLN
 | 
			
		||||
#&summary
 | 
			
		||||
Old PyGame CLI experiment
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
#+license: gpl 3+, program
 | 
			
		||||
 | 
			
		||||
* Command Line Navigation (CLN)
 | 
			
		||||
 | 
			
		||||
Never has pygame been used this effeciently...
 | 
			
		||||
 | 
			
		||||
Using Python and [[http://www.pygame.org/][pygame]] I have created a simple CLI clone that is unable to do
 | 
			
		||||
anything useful. It is merely a proof that SDL can be used for stuff that
 | 
			
		||||
appears to be non-graphical.
 | 
			
		||||
 | 
			
		||||
** Screenshot
 | 
			
		||||
#&img;url=img/screenshot.png, alt=Screenshot showing CLN in action
 | 
			
		||||
 | 
			
		||||
** Download 
 | 
			
		||||
 | 
			
		||||
Grab the 7z file [[cln_v.0.1.7z][here]]. Instructions on how to make it work are included.
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 86 KiB  | 
@@ -1,345 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
 | 
			
		||||
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   width="744.09448"
 | 
			
		||||
   height="340"
 | 
			
		||||
   id="svg2"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   inkscape:version="0.47 r22583"
 | 
			
		||||
   sodipodi:docname="logo.svg">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs4">
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       sodipodi:type="inkscape:persp3d"
 | 
			
		||||
       inkscape:vp_x="0 : 526.18109 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_z="744.09448 : 526.18109 : 1"
 | 
			
		||||
       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
 | 
			
		||||
       id="perspective10" />
 | 
			
		||||
    <pattern
 | 
			
		||||
       id="pattern2953"
 | 
			
		||||
       height="355"
 | 
			
		||||
       width="645"
 | 
			
		||||
       y="0"
 | 
			
		||||
       x="0"
 | 
			
		||||
       patternUnits="userSpaceOnUse">
 | 
			
		||||
      <g
 | 
			
		||||
         id="g2955" />
 | 
			
		||||
      <g
 | 
			
		||||
         id="g2957">
 | 
			
		||||
        <g
 | 
			
		||||
           id="g2959"
 | 
			
		||||
           clip-path="url(#clipPath2949)">
 | 
			
		||||
          <g
 | 
			
		||||
             id="g2961">
 | 
			
		||||
            <path
 | 
			
		||||
               id="path2963"
 | 
			
		||||
               style="fill:#aeb7bb;fill-opacity:1;fill-rule:nonzero;stroke:none"
 | 
			
		||||
               d="M 53.555,323.48 599.91,298.633 c 14.77,-0.672 26.117,-13.102 25.445,-27.867 L 615.699,58.398 C 615.027,43.629 602.598,32.281 587.828,32.953 L 41.477,57.797 C 26.707,58.469 15.359,70.898 16.031,85.668 l 9.657,212.367 c 0.671,14.766 13.101,26.117 27.867,25.445 z" />
 | 
			
		||||
          </g>
 | 
			
		||||
        </g>
 | 
			
		||||
      </g>
 | 
			
		||||
    </pattern>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath2949"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <path
 | 
			
		||||
         id="path2951"
 | 
			
		||||
         d="M 0,0 645,0 645,355 0,355 0,0 z" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath2945"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <path
 | 
			
		||||
         id="path2947"
 | 
			
		||||
         d="m 0,0 644.79999,0 0,354.39999 L 0,354.39999 0,0 z" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <mask
 | 
			
		||||
       id="mask2933"
 | 
			
		||||
       height="1"
 | 
			
		||||
       width="1"
 | 
			
		||||
       y="0"
 | 
			
		||||
       x="0"
 | 
			
		||||
       maskUnits="userSpaceOnUse">
 | 
			
		||||
      <g
 | 
			
		||||
         id="g2935">
 | 
			
		||||
        <g
 | 
			
		||||
           id="g2937"
 | 
			
		||||
           clip-path="url(#clipPath2929)">
 | 
			
		||||
          <path
 | 
			
		||||
             id="path2939"
 | 
			
		||||
             style="fill:#ffffff;fill-opacity:0.45794402;fill-rule:nonzero;stroke:none"
 | 
			
		||||
             d="m 0,0 644.79999,0 0,354.39999 L 0,354.39999 0,0 z" />
 | 
			
		||||
        </g>
 | 
			
		||||
      </g>
 | 
			
		||||
    </mask>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath2929"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <path
 | 
			
		||||
         id="path2931"
 | 
			
		||||
         d="m 0,0 644.79999,0 0,354.39999 L 0,354.39999 0,0 z" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <pattern
 | 
			
		||||
       id="pattern2903"
 | 
			
		||||
       height="355"
 | 
			
		||||
       width="645"
 | 
			
		||||
       y="0"
 | 
			
		||||
       x="0"
 | 
			
		||||
       patternUnits="userSpaceOnUse">
 | 
			
		||||
      <g
 | 
			
		||||
         id="g2905" />
 | 
			
		||||
      <g
 | 
			
		||||
         id="g2907">
 | 
			
		||||
        <g
 | 
			
		||||
           id="g2909"
 | 
			
		||||
           clip-path="url(#clipPath2899)">
 | 
			
		||||
          <g
 | 
			
		||||
             id="g2911">
 | 
			
		||||
            <g
 | 
			
		||||
               id="g2913"
 | 
			
		||||
               transform="matrix(1,0.031696,0.031696,-1,0,355)">
 | 
			
		||||
              <path
 | 
			
		||||
                 id="path2915"
 | 
			
		||||
                 style="fill:#88a189;fill-opacity:1;fill-rule:nonzero;stroke:#838383;stroke-opacity:1;stroke-width:1.015043;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
 | 
			
		||||
                 d="M 31.942,23.04 600.91,23.039 c 14.778,-0.001 26.674,11.896 26.675,26.669 l -0.001,274.36 c 0,14.777 -11.896,26.673 -26.674,26.67 l -568.968,10e-4 c -14.778,0 -26.67,-11.896 -26.671,-26.67 L 5.272,49.71 c 0,-14.777 11.892,-26.674 26.67,-26.67 z" />
 | 
			
		||||
            </g>
 | 
			
		||||
          </g>
 | 
			
		||||
        </g>
 | 
			
		||||
      </g>
 | 
			
		||||
    </pattern>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath2899"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <path
 | 
			
		||||
         id="path2901"
 | 
			
		||||
         d="M 0,0 645,0 645,355 0,355 0,0 z" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath2895"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <path
 | 
			
		||||
         id="path2897"
 | 
			
		||||
         d="m 0,0 644.79999,0 0,354.39999 L 0,354.39999 0,0 z" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <mask
 | 
			
		||||
       id="mask2883"
 | 
			
		||||
       height="1"
 | 
			
		||||
       width="1"
 | 
			
		||||
       y="0"
 | 
			
		||||
       x="0"
 | 
			
		||||
       maskUnits="userSpaceOnUse">
 | 
			
		||||
      <g
 | 
			
		||||
         id="g2885">
 | 
			
		||||
        <g
 | 
			
		||||
           id="g2887"
 | 
			
		||||
           clip-path="url(#clipPath2879)">
 | 
			
		||||
          <path
 | 
			
		||||
             id="path2889"
 | 
			
		||||
             style="fill:#ffffff;fill-opacity:0.45794402;fill-rule:nonzero;stroke:none"
 | 
			
		||||
             d="m 0,0 644.79999,0 0,354.39999 L 0,354.39999 0,0 z" />
 | 
			
		||||
        </g>
 | 
			
		||||
      </g>
 | 
			
		||||
    </mask>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath2879"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <path
 | 
			
		||||
         id="path2881"
 | 
			
		||||
         d="m 0,0 644.79999,0 0,354.39999 L 0,354.39999 0,0 z" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       id="perspective2861"
 | 
			
		||||
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
 | 
			
		||||
       inkscape:vp_z="1 : 0.5 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_x="0 : 0.5 : 1"
 | 
			
		||||
       sodipodi:type="inkscape:persp3d" />
 | 
			
		||||
  </defs>
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     id="base"
 | 
			
		||||
     pagecolor="#ffffff"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     inkscape:pageopacity="0.0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:zoom="1.6046349"
 | 
			
		||||
     inkscape:cx="372.04724"
 | 
			
		||||
     inkscape:cy="170"
 | 
			
		||||
     inkscape:document-units="px"
 | 
			
		||||
     inkscape:current-layer="g2865"
 | 
			
		||||
     showgrid="false"
 | 
			
		||||
     inkscape:window-width="1278"
 | 
			
		||||
     inkscape:window-height="1022"
 | 
			
		||||
     inkscape:window-x="1"
 | 
			
		||||
     inkscape:window-y="1"
 | 
			
		||||
     inkscape:window-maximized="0" />
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata7">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
      <cc:Work
 | 
			
		||||
         rdf:about="">
 | 
			
		||||
        <dc:format>image/svg+xml</dc:format>
 | 
			
		||||
        <dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
 | 
			
		||||
        <dc:title />
 | 
			
		||||
      </cc:Work>
 | 
			
		||||
    </rdf:RDF>
 | 
			
		||||
  </metadata>
 | 
			
		||||
  <g
 | 
			
		||||
     inkscape:label="Layer 1"
 | 
			
		||||
     inkscape:groupmode="layer"
 | 
			
		||||
     id="layer1">
 | 
			
		||||
    <g
 | 
			
		||||
       transform="matrix(1.25,0,0,-1.25,31.285725,916.71936)"
 | 
			
		||||
       inkscape:label="forside"
 | 
			
		||||
       id="g2863">
 | 
			
		||||
      <g
 | 
			
		||||
         id="g2865">
 | 
			
		||||
        <rect
 | 
			
		||||
           style="fill:#ff3400;fill-opacity:1;stroke:none"
 | 
			
		||||
           id="rect4456"
 | 
			
		||||
           width="587.29871"
 | 
			
		||||
           height="266.72736"
 | 
			
		||||
           x="-20.935801"
 | 
			
		||||
           y="-731.09418"
 | 
			
		||||
           transform="scale(1,-1)"
 | 
			
		||||
           ry="10.469671" />
 | 
			
		||||
        <g
 | 
			
		||||
           transform="matrix(1,-0.117595,-0.117595,-1,-43.606102,773.12083)"
 | 
			
		||||
           id="g2867">
 | 
			
		||||
          <path
 | 
			
		||||
             id="path2869"
 | 
			
		||||
             style="fill:#9e2b2b;fill-opacity:1;fill-rule:nonzero;stroke:#e08787;stroke-width:7.12143993;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
 | 
			
		||||
             d="m 56.632,85.93 c 344.025,-79.58 555.708,87.14 555.708,87.14 0,0 -161.967,54.422 -308.935,26.126 C 165.182,172.587 56.87,88.285 56.632,85.93 z" />
 | 
			
		||||
        </g>
 | 
			
		||||
        <path
 | 
			
		||||
           id="path2871"
 | 
			
		||||
           style="fill:#ff3e1d;fill-opacity:1;fill-rule:nonzero;stroke:none"
 | 
			
		||||
           d="m 328.1599,582.62084 c -9.157,-33.953 -44.106,-54.059 -78.063,-44.902 -33.953,9.16 -54.058,44.109 -44.902,78.062 9.16,33.957 44.109,54.059 78.062,44.902 33.957,-9.156 54.059,-44.105 44.903,-78.062 z" />
 | 
			
		||||
        <path
 | 
			
		||||
           id="path2873"
 | 
			
		||||
           style="fill:#ffe51d;fill-opacity:1;fill-rule:nonzero;stroke:none"
 | 
			
		||||
           d="m 299.6169,590.31984 c -4.907,-18.191 -23.629,-28.961 -41.821,-24.054 -18.191,4.906 -28.961,23.628 -24.054,41.82 4.906,18.187 23.629,28.957 41.82,24.055 18.187,-4.907 28.957,-23.629 24.055,-41.821 z" />
 | 
			
		||||
        <text
 | 
			
		||||
           id="text2973"
 | 
			
		||||
           transform="matrix(-0.99896762,0.04542796,-0.04542796,-0.99896762,0,0)"
 | 
			
		||||
           x="-529.19556"
 | 
			
		||||
           y="-716.52588"
 | 
			
		||||
           style="font-size:12px">
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2975"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-716.52588"
 | 
			
		||||
             x="-529.19556 -523.91516 -518.63477 -513.35431 -508.0737 -502.79327 -497.51297 -492.23264 -486.95224 -481.67184 -476.39145 -471.11105 -465.83066 -460.55029 -455.2699 -449.9895 -444.70911 -439.42871 -434.14832 -428.86792 -423.58752 -418.30713 -413.02673 -407.74634 -402.46594 -397.18555 -391.90518 -386.62479 -381.34439 -376.064 -370.7836 -365.5032 -360.22281 -354.94241 -349.66202 -344.38162 -339.10123 -333.82083 -328.54044 -323.26004 -317.97968 -312.69928 -307.41888 -302.13849 -296.85809 -291.5777 -286.2973 -281.01691 -275.73651 -270.45612 -265.17572 -259.89536 -254.61507 -249.3347 -244.05432 -238.77385 -233.49345 -228.21306 -222.93266 -217.65227 -212.37187 -207.09148 -201.81108 -196.53069 -191.25029 -185.96985 -180.68941 -175.40901 -170.12862 -164.84822 -159.56783 -154.28743 -149.00703 -143.72664 -138.44624 -133.16585 -127.88542 -122.60506 -117.32465 -112.04427 -106.76392 -101.48353 -96.203125 -90.922691 -85.642296 -80.361908 -75.081512 -69.801117 -64.520737 -59.24036 -53.959999 -48.679596 -43.399193 -38.118797 -32.838394 -27.557989 -22.277592 -16.997204 -11.716817 -6.4364123 -1.1560197 4.1243796 9.4047718 14.685173 19.965506 25.245901 30.526295"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">e/WJ9WfNWYK8Fm/hjtBuwDnEMmsXqMi4SBFdsYAnxYuuTVrBNC7ETPDerdCuqygSOF4QhtNPxHfIP0oToci3zYIpdMI6zh/KUQgmmZGkKEf</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2977"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-703.32489"
 | 
			
		||||
             x="-529.19556 -523.91516 -518.63477 -513.35431 -508.0737 -502.79327 -497.51291 -492.23264 -486.95224 -481.67184 -476.39145 -471.11105 -465.83066 -460.55026 -455.26987 -449.98947 -444.70908 -439.42868 -434.14832 -428.86792 -423.58752 -418.3071 -413.02673 -407.74634 -402.46594 -397.18555 -391.90515 -386.62476 -381.34436 -376.06396 -370.78357 -365.5032 -360.22281 -354.94241 -349.66202 -344.38162 -339.10123 -333.82083 -328.54044 -323.26004 -317.97964 -312.69925 -307.41885 -302.13846 -296.85806 -291.5777 -286.2973 -281.01691 -275.73651 -270.45612 -265.17572 -259.89532 -254.61504 -249.33467 -244.05429 -238.77382 -233.49345 -228.21306 -222.93266 -217.65227 -212.37187 -207.09148 -201.81108 -196.53069 -191.25029 -185.96982 -180.68938 -175.40898 -170.12859 -164.84819 -159.56783 -154.28743 -149.00703 -143.72664 -138.44624 -133.16585 -127.88542 -122.60506 -117.32465 -112.04427 -106.76389 -101.4835 -96.203102 -90.922691 -85.642296 -80.361908 -75.081512 -69.801117 -64.520737 -59.24036 -53.959969 -48.679565 -43.399162 -38.118767 -32.838364 -27.557989 -22.277592 -16.997204 -11.716817 -6.4364123 -1.1560197 4.1243796 9.4047718 14.685173 19.965567 25.245962 30.526295"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">LxoFwDHoFH7+MLrc1ihMBJquoVQEkSoLTtAdCytwyQQuhWU7zCwcpzsdhlSZOb4wS4Of6PIjuQ8YZrj2wh0mDEGw1xQ0Y0CqKyZSOrp9Y50</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2979"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-690.12396"
 | 
			
		||||
             x="-529.19556 -523.91516 -518.63477 -513.35431 -508.0737 -502.79327 -497.51291 -492.2326 -486.95221 -481.67181 -476.39145 -471.11105 -465.83066 -460.55026 -455.26987 -449.98947 -444.70908 -439.42868 -434.14828 -428.86789 -423.58749 -418.3071 -413.0267 -407.74631 -402.46594 -397.18555 -391.90515 -386.62476 -381.34436 -376.06396 -370.78357 -365.50317 -360.22278 -354.94238 -349.66199 -344.38159 -339.10123 -333.82083 -328.54044 -323.26004 -317.97964 -312.69925 -307.41885 -302.13846 -296.85806 -291.57767 -286.29727 -281.01688 -275.73648 -270.45612 -265.17572 -259.89532 -254.61504 -249.33467 -244.05429 -238.77382 -233.49342 -228.21303 -222.93263 -217.65224 -212.37184 -207.09148 -201.81108 -196.53069 -191.25029 -185.96982 -180.68938 -175.40898 -170.12859 -164.84819 -159.56779 -154.2874 -149.007 -143.72661 -138.44621 -133.16585 -127.88542 -122.60506 -117.32465 -112.04427 -106.76389 -101.4835 -96.203102 -90.922661 -85.642265 -80.361908 -75.081512 -69.801117 -64.520737 -59.24036 -53.959969 -48.679565 -43.399162 -38.118767 -32.838364 -27.557959 -22.277561 -16.997204 -11.716817 -6.4364123 -1.1560197 4.1243796 9.4047718 14.685173 19.965567 25.245962 30.526356"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">rMjo5LYpS8sWK5DRyGWIm4eBmvb83M9dXk/WKeQQdxtxTkqCqF74mYLcl9e/T5b+lckvHqZrX6snNzy+H7qFl/zYBqeAfrmW/0Iu9y5u21i</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2981"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-676.92291"
 | 
			
		||||
             x="-529.19556 -523.91516 -518.63477 -513.35431 -508.0737 -502.79327 -497.51291 -492.2326 -486.95221 -481.67181 -476.39142 -471.11102 -465.83063 -460.55023 -455.26987 -449.98947 -444.70908 -439.42868 -434.14828 -428.86789 -423.58749 -418.3071 -413.0267 -407.74631 -402.46591 -397.18552 -391.90515 -386.62476 -381.34436 -376.06396 -370.78357 -365.50317 -360.22278 -354.94238 -349.66199 -344.38159 -339.1012 -333.8208 -328.54041 -323.26001 -317.97961 -312.69925 -307.41885 -302.13846 -296.85806 -291.57767 -286.29727 -281.01688 -275.73648 -270.45609 -265.17569 -259.89532 -254.61504 -249.33467 -244.05429 -238.77382 -233.49342 -228.21303 -222.93263 -217.65224 -212.37184 -207.09145 -201.81105 -196.53065 -191.25026 -185.96979 -180.68938 -175.40898 -170.12859 -164.84819 -159.56779 -154.2874 -149.007 -143.72661 -138.44621 -133.16582 -127.8854 -122.60503 -117.32462 -112.04424 -106.76389 -101.4835 -96.203102 -90.922661 -85.642265 -80.361877 -75.081482 -69.801086 -64.520706 -59.24033 -53.959969 -48.679565 -43.399162 -38.118767 -32.838364 -27.557959 -22.277561 -16.997204 -11.716817 -6.4364123 -1.1560197 4.1243796 9.4047718 14.685173 19.965567 25.245962 30.526356"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">+WQfQlC3ieuTuv0+7IMxnD8ySeq/9sEemk5A871sKR69c/ErXR6+oFwaAxkpjREQI422EKM94p3rOWx0akxcTNSgTqSPa8XrTqFZNHfUZL7</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2983"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-663.72192"
 | 
			
		||||
             x="-529.19556 -523.91516 -518.63477 -513.35431 -508.0737 -502.79327 -497.51291 -492.2326 -486.95221 -481.67181 -476.39142 -471.11102 -465.83063 -460.55023 -455.26984 -449.98944 -444.70905 -439.42865 -434.14825 -428.86789 -423.58749 -418.30707 -413.0267 -407.74631 -402.46591 -397.18552 -391.90512 -386.62473 -381.34433 -376.06393 -370.78354 -365.50317 -360.22278 -354.94238 -349.66199 -344.38159 -339.1012 -333.8208 -328.54041 -323.26001 -317.97961 -312.69922 -307.41882 -302.13843 -296.85803 -291.57764 -286.29727 -281.01688 -275.73648 -270.45609 -265.17569 -259.89529 -254.61501 -249.33464 -244.05426 -238.77379 -233.49342 -228.21303 -222.93263 -217.65224 -212.37184 -207.09145 -201.81105 -196.53065 -191.25026 -185.96979 -180.68935 -175.40895 -170.12856 -164.84816 -159.56776 -154.2874 -149.007 -143.72661 -138.44621 -133.16582 -127.8854 -122.60503 -117.32462 -112.04424 -106.76386 -101.48345 -96.203072 -90.922661 -85.642265 -80.361877 -75.081482 -69.801086 -64.520706 -59.24033 -53.959938 -48.679535 -43.399132 -38.118736 -32.838333 -27.557959 -22.277561 -16.997143 -11.716757 -6.4363513 -1.1559587 4.1244407 9.4047718 14.685173 19.965567 25.245962 30.526356"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">mqO+kQ84cBNcZ5UkwLKYftQGhnmabKlbn/Seu5lNUPrGhFqudI3h77jYIoxpKQQCKJJgRwasJKfY+vTTGaBhMyqKsXCTCvEpYoS0YGCHbn4</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2985"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-650.521"
 | 
			
		||||
             x="-529.1955 -523.9151 -518.6347 -513.35431 -508.0737 -502.79327 -497.51291 -492.23257 -486.95218 -481.67178 -476.39142 -471.11102 -465.83063 -460.55023 -455.26984 -449.98944 -444.70905 -439.42865 -434.14825 -428.86786 -423.58746 -418.30707 -413.02667 -407.74631 -402.46591 -397.18552 -391.90512 -386.62473 -381.34433 -376.06393 -370.78354 -365.50314 -360.22275 -354.94235 -349.66196 -344.38156 -339.1012 -333.8208 -328.54041 -323.26001 -317.97961 -312.69922 -307.41882 -302.13843 -296.85803 -291.57764 -286.29724 -281.01685 -275.73645 -270.45609 -265.17569 -259.89529 -254.61501 -249.33464 -244.05426 -238.77379 -233.49339 -228.213 -222.9326 -217.65221 -212.37181 -207.09145 -201.81105 -196.53065 -191.25026 -185.96979 -180.68935 -175.40895 -170.12856 -164.84816 -159.56776 -154.28737 -149.00697 -143.72658 -138.44618 -133.16579 -127.8854 -122.60503 -117.32462 -112.04424 -106.76386 -101.48345 -96.203072 -90.92263 -85.642235 -80.361847 -75.081482 -69.801086 -64.520706 -59.24033 -53.959938 -48.679535 -43.399132 -38.118736 -32.838333 -27.557928 -22.277531 -16.997143 -11.716757 -6.4363513 -1.1559587 4.1244407 9.4048328 14.685234 19.965567 25.245962 30.526356"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">YHlz3ac7ROsYqsbLkHfIYdyY9LPhIm7hWqyAhyOjuH98yUbFNq0pb6oLbDAP8ZSaimniVG6kx4Fxv1LxQoKaWl18evBBB5WjQIgXIyPEMoC</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2987"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-637.31995"
 | 
			
		||||
             x="-529.1955 -523.9151 -518.6347 -513.35425 -508.07364 -502.79321 -497.51285 -492.23257 -486.95218 -481.67178 -476.39139 -471.11099 -465.8306 -460.5502 -455.26984 -449.98944 -444.70905 -439.42865 -434.14825 -428.86786 -423.58746 -418.30707 -413.02667 -407.74628 -402.46588 -397.18549 -391.90509 -386.62473 -381.34433 -376.06393 -370.78354 -365.50314 -360.22275 -354.94235 -349.66196 -344.38156 -339.10117 -333.82077 -328.54037 -323.25998 -317.97958 -312.69922 -307.41882 -302.13843 -296.85803 -291.57764 -286.29724 -281.01685 -275.73645 -270.45605 -265.17566 -259.89526 -254.61501 -249.33464 -244.05426 -238.77379 -233.49339 -228.213 -222.9326 -217.65221 -212.37181 -207.09142 -201.81102 -196.53062 -191.25023 -185.96976 -180.68935 -175.40895 -170.12856 -164.84816 -159.56776 -154.28737 -149.00697 -143.72658 -138.44618 -133.16579 -127.88537 -122.60499 -117.32459 -112.04421 -106.76383 -101.48345 -96.203072 -90.92263 -85.642235 -80.361847 -75.081451 -69.801056 -64.520676 -59.240299 -53.959908 -48.679535 -43.399132 -38.118736 -32.838333 -27.557928 -22.277531 -16.997143 -11.716757 -6.4363513 -1.1559587 4.1244407 9.4048328 14.685234 19.965567 25.245962 30.526356"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">997++bMlsSV2mStrZXZXlZvXm+9BeXJsQ/bSVr9jYMIOSM5mLcfAyHfd7ct7GSiX7Oc8MGZbkX+hnLv7jnkdc5aOeIrBWlYfumMw6IrK15w</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2989"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-624.11902"
 | 
			
		||||
             x="-529.1955 -523.9151 -518.6347 -513.35425 -508.07364 -502.79321 -497.51285 -492.23257 -486.95218 -481.67178 -476.39139 -471.11099 -465.8306 -460.5502 -455.26981 -449.98941 -444.70901 -439.42862 -434.14822 -428.86783 -423.58746 -418.30704 -413.02667 -407.74628 -402.46588 -397.18549 -391.90509 -386.62469 -381.3443 -376.0639 -370.78351 -365.50311 -360.22275 -354.94235 -349.66196 -344.38156 -339.10117 -333.82077 -328.54037 -323.25998 -317.97958 -312.69919 -307.41879 -302.1384 -296.858 -291.57761 -286.29724 -281.01685 -275.73645 -270.45605 -265.17566 -259.89526 -254.61497 -249.33461 -244.05423 -238.77376 -233.49336 -228.213 -222.9326 -217.65221 -212.37181 -207.09142 -201.81102 -196.53062 -191.25023 -185.96976 -180.68932 -175.40892 -170.12852 -164.84813 -159.56773 -154.28737 -149.00697 -143.72658 -138.44618 -133.16579 -127.88537 -122.60499 -117.32459 -112.04421 -106.76383 -101.48341 -96.203026 -90.92263 -85.642235 -80.361847 -75.081451 -69.801056 -64.520676 -59.240299 -53.959908 -48.679504 -43.399101 -38.118706 -32.838303 -27.557898 -22.277531 -16.997143 -11.716757 -6.4363513 -1.1559587 4.1244407 9.4048328 14.685234 19.965628 25.246023 30.526417"
 | 
			
		||||
             style="font-size:10.5607872px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">otQUD0Zuib0eP6cnGWw9i4yvPSC9YLBwZVozQpg2tUsWmtpc3KrTzDBc+4AmbA1fMGDuINeVkPmFbfn4QXc5uyeozmp0mR8KOJ6qhV5ow==</tspan>
 | 
			
		||||
        </text>
 | 
			
		||||
        <text
 | 
			
		||||
           id="text2991"
 | 
			
		||||
           transform="matrix(-0.99896762,0.045428,-0.045428,-0.99896762,0,0)"
 | 
			
		||||
           x="-529.07562"
 | 
			
		||||
           y="-604.41357"
 | 
			
		||||
           style="font-size:12px">
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2993"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-604.41357"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">AAAAgIPJov3uoC/PqdXATy5eHffFBWJ5AuZPqH+kcXgbGVorpfKFMtKB8zqZZein8oYDCPwCcbQH8NmdoUsZtPJhr8</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2995"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-588.72144"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">DsoPBduYsGljMGZR1Vp1a6XhWd1b+b/O5LWJBYhnBPv4GJMwLkd3djE81rPbF+frmr2z4yvoLYmbKrajzMFLW/AAAA</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2997"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-573.0293"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">AwEAAQAAAIBicnU01laJgMqxJ7i+vYYLef18w0M8QxNvTquI+k1lA6gy0/fUM0k8ZC0xsIxGOewzPawsvaXZGpzL2k</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan2999"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-557.33722"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">dGrVy5XfzrJ36Zx19f6fx2pxGeCkrX+ERWFmS8Gg7qqPldHPT5T8otBlOwh/zVVf/Ok8AaONkhpWAol1ZM8VOW314M</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan3001"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-541.64508"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">UQAAAEDbkCuOFwkiEAHRxlquYTCBoQSo4EKlpHfIASdQUF6iaTjiYco5ednub2kFsqHKXqoIAfp7QtdJkUpDxjKg+T</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan3003"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-525.953"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">dXAAAAQJmocquo9sCUJam/4hvYLmPST4RZYJs9gSO+Sztst7rj7tKRAQck7Du/dMkT9flABs7x5Whbkaq+BygJZi3y</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan3005"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-510.26083"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">e9kAAACAg8mi/e6gL8+p1cBPLl4d98UFYnkC5k+of6RxeBsZWiul8oUy0oHzOpll6KfyhgMI/AJxtAfw2Z2hSxm08m</tspan>
 | 
			
		||||
          <tspan
 | 
			
		||||
             id="tspan3007"
 | 
			
		||||
             sodipodi:role="line"
 | 
			
		||||
             y="-494.56845"
 | 
			
		||||
             x="-529.07562 -522.79883 -516.52197 -510.24487 -503.96799 -497.69113 -491.4144 -485.13754 -478.86072 -472.58386 -466.30701 -460.03018 -453.75333 -447.47647 -441.19965 -434.92279 -428.64594 -422.36911 -416.09225 -409.8154 -403.53854 -397.26172 -390.98489 -384.70804 -378.43118 -372.15436 -365.8775 -359.60065 -353.32382 -347.04697 -340.77011 -334.49329 -328.21643 -321.93958 -315.66275 -309.38589 -303.10907 -296.83221 -290.55536 -284.27853 -278.00168 -271.72485 -265.448 -259.17114 -252.89447 -246.6176 -240.34071 -234.06384 -227.78699 -221.51013 -215.23331 -208.95645 -202.6796 -196.40277 -190.12592 -183.84909 -177.57224 -171.29538 -165.01855 -158.7417 -152.46484 -146.18802 -139.91116 -133.63431 -127.35744 -121.0805 -114.80366 -108.52685 -102.25001 -95.973167 -89.696312 -83.419464 -77.142639 -70.865784 -64.588936 -58.312138 -52.035278 -45.758408 -39.481579 -33.20472 -26.927862 -20.651039 -14.374212 -8.0973568 -1.820497 4.4563546 10.733217 17.010069 23.286854 29.563709"
 | 
			
		||||
             style="font-size:12.553689px;font-variant:normal;font-weight:normal;writing-mode:lr-tb;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;font-family:Inconsolata;-inkscape-font-specification:Inconsolata">Gvv3doUiP5iyPyC4re4Itt99TqwXCcHFsa9V+ZHczJWfJyWdRAN6PYsTjk75x3GbrgCNTnXk8gGeRKYT+ao/0pApA=</tspan>
 | 
			
		||||
        </text>
 | 
			
		||||
      </g>
 | 
			
		||||
    </g>
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 32 KiB  | 
@@ -1,23 +0,0 @@
 | 
			
		||||
#+title: desurveil
 | 
			
		||||
#&summary
 | 
			
		||||
Cryptography program
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, text
 | 
			
		||||
#+license: cc0, logo
 | 
			
		||||
#+license: agpl 3+, program
 | 
			
		||||
 | 
			
		||||
* desurveil
 | 
			
		||||
 | 
			
		||||
#&img;url=desurveil-logo.png, medlink=desurveil-logo.svg, alt=desurveil logo, center
 | 
			
		||||
 | 
			
		||||
#&-large
 | 
			
		||||
desurveil is a cryptography program with support for key pair generation and
 | 
			
		||||
encrypting and decrypting with RSA, OAEP, and arbitrary data lengths. [[desurveil-0.1.1.tar.gz][Download]].
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
desurveil is released under the [[http://gnu.org/licenses/agpl.html][AGPLv3(+)]] license.
 | 
			
		||||
 | 
			
		||||
desurveil can also be found in the [[http://pypi.python.org/pypi/desurveil][Python Package Index]].
 | 
			
		||||
 | 
			
		||||
desurveil has its code at Gitorious; see [[http://gitorious.org/desurveil][http://gitorious.org/desurveil]].
 | 
			
		||||
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 33 KiB  | 
@@ -1,21 +0,0 @@
 | 
			
		||||
#+title: Dililatum
 | 
			
		||||
#&summary
 | 
			
		||||
RPG engine
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
#+license: gpl 3+, program
 | 
			
		||||
 | 
			
		||||
* Dililatum
 | 
			
		||||
 | 
			
		||||
#&img;url=granul-small.png, float=right, alt=Dililatum logo, width=256, height=360
 | 
			
		||||
 | 
			
		||||
Dililatum is an RPG library/engine. It's quite simple. The 0.1 release is just
 | 
			
		||||
out, and you can get it from Launchpad [[http://launchpad.net/dililatum/trunk/0.1/+download/Dililatum-0.1.tar.gz][here]].
 | 
			
		||||
 | 
			
		||||
To really use Dililatum you will need a game. [[../forestquest/][ForestQuest]] is such a game. It's
 | 
			
		||||
not very finished, but it works.
 | 
			
		||||
 | 
			
		||||
Dililatum uses Launchpad for development, so there's not much need for this
 | 
			
		||||
page. The project is available at [[http://launchpad.net/dililatum][http://launchpad.net/dililatum]], and the team
 | 
			
		||||
managing the project has its page at [[http://launchpad.net/~dililatum-dev][http://launchpad.net/~dililatum-dev]].
 | 
			
		||||
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 20 KiB  | 
@@ -1,23 +0,0 @@
 | 
			
		||||
#+title: DotBox
 | 
			
		||||
#&summary
 | 
			
		||||
A block-based mini game library
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
#+license: gpl 3+, program
 | 
			
		||||
 | 
			
		||||
* DotBox
 | 
			
		||||
 | 
			
		||||
#&img;url=dotbox-logo-320.png, alt=DotBox logo, center
 | 
			
		||||
 | 
			
		||||
#&+large, center
 | 
			
		||||
DotBox is a block-based game mini library. It greatly limits what is plausible.
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
DotBox is licensed under the GNU General Public License, version 3 or any later
 | 
			
		||||
version. The current version of DotBox is 0.1.0.
 | 
			
		||||
 | 
			
		||||
[[dotbox-0.1.0.tar.gz][Download gzipped tarball]].
 | 
			
		||||
 | 
			
		||||
DotBox can also be found in the [[http://pypi.python.org/pypi/dotbox][Python Package Index]].
 | 
			
		||||
 | 
			
		||||
DotBox has its code at Gitorious; see [[http://gitorious.org/dotbox][http://gitorious.org/dotbox]].
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
#+title: Dungeon Crawl of Doom
 | 
			
		||||
#&summary
 | 
			
		||||
Kill monsters in generated dungeons.
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, text
 | 
			
		||||
#+license: gpl 3+, program
 | 
			
		||||
#&toc
 | 
			
		||||
 | 
			
		||||
* Dungeon Crawl
 | 
			
		||||
** OF DOOM!
 | 
			
		||||
 | 
			
		||||
#&img;url=screenshot.png,width=640
 | 
			
		||||
 | 
			
		||||
** Download
 | 
			
		||||
 | 
			
		||||
dungeoncrawl is released under the GPLv3+. The current version is
 | 
			
		||||
1.0. [[dungeoncrawl-1.0.zip][Download here]].
 | 
			
		||||
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 7.3 KiB  | 
| 
		 Before Width: | Height: | Size: 6.6 KiB  | 
@@ -1,40 +0,0 @@
 | 
			
		||||
#+title: Electruth
 | 
			
		||||
#&summary
 | 
			
		||||
A collection of boolean logic tools. Understands gEDA netlists.
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, text
 | 
			
		||||
#+license: cc0, logo
 | 
			
		||||
#+license: gpl 3+, program
 | 
			
		||||
 | 
			
		||||
* Electruth
 | 
			
		||||
 | 
			
		||||
See the Truth via ELECTRUTH&color=blue&huge.
 | 
			
		||||
 | 
			
		||||
#&img;url=electruth-logo-400.png, alt=electruth logo
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
"Sometimes it's false, sometimes it's true. But it's always
 | 
			
		||||
boolean."
 | 
			
		||||
  -- Someone
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
electruth (or "ELECTRUTH") is a collection of boolean logic tools. It can be
 | 
			
		||||
used as both a command-line tool and a Python library. It understands boolean
 | 
			
		||||
algebra (to some extent) and can be used to simplify boolean expressions using
 | 
			
		||||
the Quine-McClusky method. This can be useful if you have a truth table in need
 | 
			
		||||
of basic shortening. electruth can also be used to compare boolean expressions,
 | 
			
		||||
which can be very useful if you need to compare a truth table with a schematic
 | 
			
		||||
you created based on that truth table. electruth can also be used to "destroy"
 | 
			
		||||
complex boolean expressions into simpler ones consisting only of ANDS, ORS and
 | 
			
		||||
NOTS.
 | 
			
		||||
 | 
			
		||||
You can download the newest electruth, v0.2.0, (released under the GPLv3+)
 | 
			
		||||
[[electruth-0.2.0.tar.gz][here]].
 | 
			
		||||
 | 
			
		||||
Old versions: [[electruth-0.1.0.tar.gz][0.1.1]] (final one for Python 2.x), [[electruth-0.1.0.tar.gz][0.1.0]].
 | 
			
		||||
 | 
			
		||||
electruth can also be found in the [[http://pypi.python.org/pypi/electruth][Python Package Index]].
 | 
			
		||||
 | 
			
		||||
electruth has its code at Gitorious; see [[http://gitorious.org/electruth][http://gitorious.org/electruth]].
 | 
			
		||||
 | 
			
		||||
NEW: Truth table generation howto up [[truthtables][here]].
 | 
			
		||||
@@ -1,63 +0,0 @@
 | 
			
		||||
#+title: Electruth :: Truth tables
 | 
			
		||||
#&summary
 | 
			
		||||
A guide to using truth tables with electruth
 | 
			
		||||
#&
 | 
			
		||||
#+license: bysa, page
 | 
			
		||||
 | 
			
		||||
* HOWTO: Truth tables in electruth
 | 
			
		||||
 | 
			
		||||
The truth table syntax used in electruth is simple: columns are separated by
 | 
			
		||||
commas (but can be separated by tabs instead), and rows are separated by
 | 
			
		||||
newlines. The first row must contain at least one input column and at least one
 | 
			
		||||
output column. To specify that something is input, prefix the input variable
 | 
			
		||||
with a '<' character. To specify an output, use the '>' character. This is best
 | 
			
		||||
illustrated with an example:
 | 
			
		||||
#&pre
 | 
			
		||||
<A,<B,>out
 | 
			
		||||
0,0,1
 | 
			
		||||
0,1,0
 | 
			
		||||
1,0,0
 | 
			
		||||
1,1,1
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
If you save this file as something.csv (.csv means it consists of
 | 
			
		||||
comma-separated values) and run `electruth something.csv', you should get an
 | 
			
		||||
output like this:
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
out = or(and(not(A), not(B)), and(A, B))
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
This makes sense, considering that the output variable `out' is only true (a
 | 
			
		||||
"1" in the truth table) when `out' is either not A and not B or A and B.
 | 
			
		||||
 | 
			
		||||
So, that's how you make a truth table understandable by electruth. I want to
 | 
			
		||||
stress that electruth's output can almost always be shortened. In the example
 | 
			
		||||
above, we can see that `out' is false ("0") when A or B is true -- it is false
 | 
			
		||||
only when A is false and B is true, and when A is true and B is false. This
 | 
			
		||||
construct can be shortened to fit the XOR operator, and we can say that `out'
 | 
			
		||||
is false when out = A XOR B. This means that `out' is true when out = NOT (A
 | 
			
		||||
XOR B) (in the internals of electruth, this would be written as "out =
 | 
			
		||||
not(xor(A, B))"). This is much shorter than "out = or(and(not(A), not(B)),
 | 
			
		||||
and(A, B))". To test if the two expressions really match, electruth can be used
 | 
			
		||||
(and this is really electruth's best part) by running this:
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
electruth truthtable.csv 'out=not A xor B'
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
which should return this:
 | 
			
		||||
 | 
			
		||||
#&pre
 | 
			
		||||
out_0 = or(and(not(A), not(B)), and(A, B))
 | 
			
		||||
out_1 = or(and(not(A), not(B)), and(A, B))
 | 
			
		||||
 '- out_0 matches out_1? True
 | 
			
		||||
#&
 | 
			
		||||
 | 
			
		||||
which just confirms that it is true.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
I created electruth to help me design electronic digital circuits. I don't know
 | 
			
		||||
what you use it for, but if you stumbled upon it because of that, I can
 | 
			
		||||
recommend you take a look at the programs called Ktechlab and Qucs. They can be
 | 
			
		||||
used for boolean logic as well.
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 6.6 KiB  | 
| 
		 Before Width: | Height: | Size: 4.5 KiB  | 
| 
		 Before Width: | Height: | Size: 13 KiB  | 
@@ -1,86 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   width="500"
 | 
			
		||||
   height="250"
 | 
			
		||||
   id="svg2"
 | 
			
		||||
   sodipodi:version="0.32"
 | 
			
		||||
   inkscape:version="0.46"
 | 
			
		||||
   version="1.0"
 | 
			
		||||
   sodipodi:docname="logo.svg"
 | 
			
		||||
   inkscape:output_extension="org.inkscape.output.svg.inkscape">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs4">
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       sodipodi:type="inkscape:persp3d"
 | 
			
		||||
       inkscape:vp_x="0 : 526.18109 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_z="744.09448 : 526.18109 : 1"
 | 
			
		||||
       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
 | 
			
		||||
       id="perspective10" />
 | 
			
		||||
  </defs>
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     id="base"
 | 
			
		||||
     pagecolor="#ffffff"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     gridtolerance="10000"
 | 
			
		||||
     guidetolerance="10"
 | 
			
		||||
     objecttolerance="10"
 | 
			
		||||
     inkscape:pageopacity="0.0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:zoom="2.308"
 | 
			
		||||
     inkscape:cx="250"
 | 
			
		||||
     inkscape:cy="125"
 | 
			
		||||
     inkscape:document-units="px"
 | 
			
		||||
     inkscape:current-layer="layer1"
 | 
			
		||||
     showgrid="false"
 | 
			
		||||
     inkscape:window-width="1255"
 | 
			
		||||
     inkscape:window-height="974"
 | 
			
		||||
     inkscape:window-x="25"
 | 
			
		||||
     inkscape:window-y="0" />
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata7">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
      <cc:Work
 | 
			
		||||
         rdf:about="">
 | 
			
		||||
        <dc:format>image/svg+xml</dc:format>
 | 
			
		||||
        <dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
 | 
			
		||||
      </cc:Work>
 | 
			
		||||
    </rdf:RDF>
 | 
			
		||||
  </metadata>
 | 
			
		||||
  <g
 | 
			
		||||
     inkscape:label="Layer 1"
 | 
			
		||||
     inkscape:groupmode="layer"
 | 
			
		||||
     id="layer1">
 | 
			
		||||
    <path
 | 
			
		||||
       sodipodi:type="star"
 | 
			
		||||
       style="opacity:1;fill:#ff00ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.5;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
 | 
			
		||||
       id="path2394"
 | 
			
		||||
       sodipodi:sides="3"
 | 
			
		||||
       sodipodi:cx="195.65831"
 | 
			
		||||
       sodipodi:cy="354.98007"
 | 
			
		||||
       sodipodi:r1="153.25435"
 | 
			
		||||
       sodipodi:r2="76.627174"
 | 
			
		||||
       sodipodi:arg1="1.9936503"
 | 
			
		||||
       sodipodi:arg2="3.0408478"
 | 
			
		||||
       inkscape:flatsided="true"
 | 
			
		||||
       inkscape:rounded="0"
 | 
			
		||||
       inkscape:randomized="0"
 | 
			
		||||
       d="M 132.76813,494.73601 L 106.07121,230.63761 L 348.13559,339.5666 L 132.76813,494.73601 z"
 | 
			
		||||
       transform="matrix(0.8876668,0,0,0.7989111,50.92815,-166.99191)" />
 | 
			
		||||
    <path
 | 
			
		||||
       style="font-size:40px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Sans;-inkscape-font-specification:Gentium Bold"
 | 
			
		||||
       d="M 81.653893,121.7791 L 94.408342,121.7791 L 94.408342,133.92051 L 80.856732,133.92051 L 37.994437,133.92051 L 37.994437,149.15248 L 25.730539,149.15248 L 25.730539,79.615242 L 94.408342,79.615242 L 94.408342,91.535909 L 37.994437,91.535909 L 37.994437,121.7791 L 81.653893,121.7791 M 123.84168,133.92051 L 123.84168,91.315169 L 167.50114,121.7791 L 167.50114,133.92051 L 180.25559,133.92051 L 180.25559,116.03952 L 128.74724,79.615242 L 111.57779,79.615242 L 111.57779,133.92051 L 123.84168,133.92051 M 209.87288,133.92051 L 209.87288,85.134079 L 197.60899,85.134079 L 197.60899,133.92051 L 209.87288,133.92051 M 209.68893,77.573289 L 209.68893,67.860152 L 197.42504,67.860152 L 197.42504,77.573289 L 209.68893,77.573289 M 227.10364,79.615242 L 295.78144,79.615242 L 295.78144,133.92051 L 295.78144,149.15248 L 283.027,149.15248 L 283.027,133.92051 L 227.10364,133.92051 M 283.027,121.7791 L 283.027,91.535909 L 239.36757,91.535909 L 239.36757,121.7791 L 283.027,121.7791 M 353.17649,133.92051 L 340.91256,133.92051 L 340.91256,91.535909 L 325.21479,91.535909 L 325.21479,133.92051 L 312.95093,133.92051 L 312.95093,79.615242 L 381.62872,79.615242 L 381.62872,133.92051 L 368.87427,133.92051 L 368.87427,91.535909 L 353.17649,91.535909 L 353.17649,133.92051 M 454.72149,121.7791 L 454.72149,91.535909 L 411.06206,121.7791 L 454.72149,121.7791 M 421.85429,91.535909 L 398.79814,91.535909 L 398.79814,79.615242 L 467.47594,79.615242 L 467.47594,133.92051 L 398.79814,133.92051 L 398.79814,116.26026 L 434.36344,91.535909 M 25.730539,149.18456 L 73.31445,148.99524 L 467.40565,148.99524 L 467.40565,160.9159 L 37.994437,160.9159"
 | 
			
		||||
       id="flowRoot2383"
 | 
			
		||||
       sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" />
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 4.6 KiB  | 
@@ -1,57 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Booleans - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Language.html#Language" title="Language">
 | 
			
		||||
<link rel="prev" href="Lists.html#Lists" title="Lists">
 | 
			
		||||
<link rel="next" href="Files.html#Files" title="Files">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Booleans"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Files.html#Files">Files</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Lists.html#Lists">Lists</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Language.html#Language">Language</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">2.5 Booleans</h3>
 | 
			
		||||
 | 
			
		||||
<p><a name="index-booleans-8"></a>Booleans are used a lot in Enigma. The predefined variables <code>true</code>
 | 
			
		||||
and <code>false</code> can be used.
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,179 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Built-In functions - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Built_002dIn.html#Built_002dIn" title="Built-In">
 | 
			
		||||
<link rel="prev" href="Built_002dIn-values.html#Built_002dIn-values" title="Built-In values">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Built-In-functions"></a>
 | 
			
		||||
<a name="Built_002dIn-functions"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Built_002dIn-values.html#Built_002dIn-values">Built-In values</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Built_002dIn.html#Built_002dIn">Built-In</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">6.2 Functions</h3>
 | 
			
		||||
 | 
			
		||||
<p><a name="index-built_002din-functions-17"></a>Enigma has few built-in functions. But they do exist.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>str(OBJECT...)</code>: Converts all supplied values to strings.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>num(OBJECT...)</code>: Converts all supplied values to numbers.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>list(OBJECT...)</code>: Puts all supplied values in a list and destroys
 | 
			
		||||
nested lists at one level.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>bool(OBJECT...)</code>: Converts all supplied values to booleans.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>code(OBJECT...)</code>: Converts all supplied values to code strings.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>repr(OBJECT...)</code>: Converts all supplied values to representational
 | 
			
		||||
strings. Strings get prepended and appended by " characters, code
 | 
			
		||||
objects are surrounded by { and }, and so on.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>type(OBJECT...)</code>: Converts all supplied values to type strings
 | 
			
		||||
(string, number, file, etc.).
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>len(OBJECT...)</code>: Converts all supplied values to their length. This
 | 
			
		||||
can be used for both strings and lists.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>clone(OBJECT...)</code>: Clones all supplied values. When an object is
 | 
			
		||||
cloned, its value is assigned to a new variable. The list of clones is
 | 
			
		||||
returned.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>slice(LIST|STRING, NUMBER, NUMBER)</code>: Returns a list value sliced
 | 
			
		||||
according to the first and second number if the first variable is a
 | 
			
		||||
list variable, or a substring if the first variable is a string
 | 
			
		||||
variable.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>loop(FUNCTION, [OBJECT]...)</code>: Executes function until it returns
 | 
			
		||||
false. Sends the rest of the specified variables (if any) to the
 | 
			
		||||
function as arguments.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>open(STRING, STRING)</code>: Opens the file by the name of the first
 | 
			
		||||
string, using the second string as its guide as to how it should be
 | 
			
		||||
opened. "r" means to read, "w" means to write, and "a" means to
 | 
			
		||||
append. Returns a file object.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>close(FILE...)</code>: Closes files.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>read(FILE)</code>: Reads one character of a file and returns it. If no
 | 
			
		||||
more characters are present, an empty string is returned.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>write(FILE, STRING)</code>: Writes a string to a file.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>greater(NUMBER, NUMBER...</code>: Checks if the first number is
 | 
			
		||||
greater than the rest and returns true or false.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>lesser(NUMBER, NUMBER...</code>: Checks if the first number is
 | 
			
		||||
lesser than the rest and returns true or false.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>equal(OBJECT, OBJECT...</code>: Checks if the objects are equal and returns
 | 
			
		||||
true or false.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>and(BOOLEAN...)</code>: Checks if all booleans are true and returns true
 | 
			
		||||
or false.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>or(BOOLEAN...)</code>: Checks if at least one boolean is true and returns
 | 
			
		||||
true or false.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>not(BOOLEAN...)</code>: Converts values of true to values of false, and
 | 
			
		||||
vice-versa.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>act(BOOLEAN, FUNCTION, [OBJECT]...)</code>: Run the function with the
 | 
			
		||||
optional objects as arguments if the boolean is true.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>system(STRING...)</code>: Join the strings and run the result as a
 | 
			
		||||
system command.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>add(NUMBER|STRING|CODE|LIST...)</code>: Add objects together. Numbers, strings, code
 | 
			
		||||
strings and lists can be used, but only with similar types. The type
 | 
			
		||||
of the first object determines what types the rest must be. The result
 | 
			
		||||
is stored in the first object and also returned.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>subtract(NUMBER...)</code>: Subtract numbers from each other. The
 | 
			
		||||
first object receives the final number. It is also returned.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>multiply(NUMBER...)</code>: Multiply numbers with each other. The
 | 
			
		||||
first object receives the final number. It is also returned.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>divide(NUMBER...)</code>: Divide numbers with each other. The
 | 
			
		||||
first object receives the final number. It is also returned.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>mod(NUMBER, NUMBER)</code>: Finds the remainder of the first number
 | 
			
		||||
divided with the second number and returns it as a new variable.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>pow(NUMBER, NUMBER)</code>: Returns first number^second number.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>log(NUMBER, [NUMBER])</code>: Returns the logarithm of the first
 | 
			
		||||
number. If the second number is not specified, the natural logarith is
 | 
			
		||||
used.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>random()</code>: Returns a random number between 0 and 1.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>abs(NUMBER...)</code>: Sets and returns absolute values of numbers.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>round(NUMBER, NUMBER)</code>: Rounds the first number with x decimals,
 | 
			
		||||
where x is the second number.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>floor(NUMBER, NUMBER)</code>: Floors the first number with x decimals,
 | 
			
		||||
where x is the second number.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>ceil(NUMBER, NUMBER)</code>: "Ceils" the first number with x decimals,
 | 
			
		||||
where x is the second number.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>sin(NUMBER...)</code>: Sets and returns sine values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>cos(NUMBER...)</code>: Sets and returns cosine values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>tan(NUMBER...)</code>: Sets and returns tangent values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>asin(NUMBER...)</code>: Sets and returns arcsine values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>acos(NUMBER...)</code>: Sets and returns arccosine values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>atan(NUMBER...)</code>: Sets and returns arctangent values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>sinh(NUMBER...)</code>: Sets and returns hyperbolic sine values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>cosh(NUMBER...)</code>: Sets and returns hyperbolic cosine values.
 | 
			
		||||
 | 
			
		||||
<p class="noindent"><code>tanh(NUMBER...)</code>: Sets and returns hyperbolic tangent values.
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,68 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Built-In values - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Built_002dIn.html#Built_002dIn" title="Built-In">
 | 
			
		||||
<link rel="prev" href="Built_002dIn.html#Built_002dIn" title="Built-In">
 | 
			
		||||
<link rel="next" href="Built_002dIn-functions.html#Built_002dIn-functions" title="Built-In functions">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Built-In-values"></a>
 | 
			
		||||
<a name="Built_002dIn-values"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Built_002dIn-functions.html#Built_002dIn-functions">Built-In functions</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Built_002dIn.html#Built_002dIn">Built-In</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Built_002dIn.html#Built_002dIn">Built-In</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">6.1 Values</h3>
 | 
			
		||||
 | 
			
		||||
<p><a name="index-built_002din-values-16"></a>The following variables are special and can be accessed anytime. They can
 | 
			
		||||
even be overwritten.
 | 
			
		||||
<pre class="verbatim">args, return, temp, stdin, stderr, stdout, zero, true, false, none, @pi,
 | 
			
		||||
@e, cwd, cpd, fnm
 | 
			
		||||
</pre>
 | 
			
		||||
<code>zero</code> is a fake writable file that does nothing. <code>none</code> is an
 | 
			
		||||
abstract variable with an internal value of.. none. <code>@pi</code> is
 | 
			
		||||
Pi. <code>@e</code> is Euler's number. <code>cwd</code> is the directory from which
 | 
			
		||||
Enigma is run, <code>cpd</code> is the directory in which the current program
 | 
			
		||||
file resides, and <code>fnm</code> is the filename of the current program
 | 
			
		||||
file. The rest are self-explanatory — and <code>args</code>, <code>return</code>
 | 
			
		||||
and <code>temp</code> are extra special.
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,59 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Built-In - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="prev" href="Comparison.html#Comparison" title="Comparison">
 | 
			
		||||
<link rel="next" href="Copying-This-Manual.html#Copying-This-Manual" title="Copying This Manual">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Built-In"></a>
 | 
			
		||||
<a name="Built_002dIn"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Copying-This-Manual.html#Copying-This-Manual">Copying This Manual</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Comparison.html#Comparison">Comparison</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h2 class="chapter">6 Built-in values and functions</h2>
 | 
			
		||||
 | 
			
		||||
<ul class="menu">
 | 
			
		||||
<li><a accesskey="1" href="Built_002dIn-values.html#Built_002dIn-values">Built-In values</a>
 | 
			
		||||
<li><a accesskey="2" href="Built_002dIn-functions.html#Built_002dIn-functions">Built-In functions</a>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
</body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,75 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Compared assigning - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Comparison.html#Comparison" title="Comparison">
 | 
			
		||||
<link rel="prev" href="Comparison.html#Comparison" title="Comparison">
 | 
			
		||||
<link rel="next" href="Compared-conditionals.html#Compared-conditionals" title="Compared conditionals">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Compared-assigning"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Compared-conditionals.html#Compared-conditionals">Compared conditionals</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Comparison.html#Comparison">Comparison</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Comparison.html#Comparison">Comparison</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">5.1 Assigning values</h3>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>C:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     type var = value;
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   <blockquote>
 | 
			
		||||
<b>Python:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     var = value
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   <blockquote>
 | 
			
		||||
<b>Enigma:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     value = var;
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,83 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Compared conditionals - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Comparison.html#Comparison" title="Comparison">
 | 
			
		||||
<link rel="prev" href="Compared-assigning.html#Compared-assigning" title="Compared assigning">
 | 
			
		||||
<link rel="next" href="Compared-looping.html#Compared-looping" title="Compared looping">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Compared-conditionals"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Compared-looping.html#Compared-looping">Compared looping</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Compared-assigning.html#Compared-assigning">Compared assigning</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Comparison.html#Comparison">Comparison</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">5.2 Conditionals</h3>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>C:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     if ((a == 2 && b < 5) || (c != 4 && !d)) do_something();
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   <blockquote>
 | 
			
		||||
<b>Python:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     if (a == 2 and b < 5) or (c != 4 and not d):
 | 
			
		||||
     do_something()
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   <blockquote>
 | 
			
		||||
<b>Enigma:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     a 2 ! equal = cond-a;
 | 
			
		||||
     b 5 ! lesser = cond-b;
 | 
			
		||||
     c 4 ! equal ! not = cond-c;
 | 
			
		||||
     d ! not = cond-d;
 | 
			
		||||
     cond-a cond-b ! and = ncond-ab;
 | 
			
		||||
     cond-c cond-d ! and = ncond-cd;
 | 
			
		||||
     ncond-ab ncond-cd ! or = actcond;
 | 
			
		||||
     actcond do-something ! act;
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,80 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Compared functions - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Comparison.html#Comparison" title="Comparison">
 | 
			
		||||
<link rel="prev" href="Compared-looping.html#Compared-looping" title="Compared looping">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Compared-functions"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Compared-looping.html#Compared-looping">Compared looping</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Comparison.html#Comparison">Comparison</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">5.4 Functions</h3>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>C:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="verbatim">int time(float space) {
 | 
			
		||||
    return (int) space / 3;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
t = time(81.65);
 | 
			
		||||
</pre>
 | 
			
		||||
</td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>Python:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     def time(space):
 | 
			
		||||
         return int(space / 3)
 | 
			
		||||
     
 | 
			
		||||
     t = time(81.65)
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
   <blockquote>
 | 
			
		||||
<b>Enigma:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="verbatim">{/space/space 3 ! divide ! clone ! round = return;} = time;
 | 
			
		||||
 | 
			
		||||
81.65 ! time = t;
 | 
			
		||||
</pre>
 | 
			
		||||
</td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,80 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Compared looping - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Comparison.html#Comparison" title="Comparison">
 | 
			
		||||
<link rel="prev" href="Compared-conditionals.html#Compared-conditionals" title="Compared conditionals">
 | 
			
		||||
<link rel="next" href="Compared-functions.html#Compared-functions" title="Compared functions">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Compared-looping"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Compared-functions.html#Compared-functions">Compared functions</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Compared-conditionals.html#Compared-conditionals">Compared conditionals</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Comparison.html#Comparison">Comparison</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">5.3 Looping</h3>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>C:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     while (thinking) run();
 | 
			
		||||
     
 | 
			
		||||
     for (int i = 0; i < 18; i++) run(i);
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<blockquote>
 | 
			
		||||
<b>Python:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="example">     while thinking: run()
 | 
			
		||||
     
 | 
			
		||||
     for i in range(18): run(i)
 | 
			
		||||
</pre>
 | 
			
		||||
   </td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
   <blockquote>
 | 
			
		||||
<b>Enigma:</b> <p><table class="cartouche" summary="cartouche" border="1"><tr><td>
 | 
			
		||||
<pre class="verbatim">{!run; thinking ! clone = return;} ! loop;
 | 
			
		||||
 | 
			
		||||
0 = i;
 | 
			
		||||
{i ! run; i 1 ! add; i 18 ! equal = return;} ! loop;
 | 
			
		||||
</pre>
 | 
			
		||||
</td></tr></table>
 | 
			
		||||
</blockquote>
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,60 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Comparison - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="prev" href="Implementations.html#Implementations" title="Implementations">
 | 
			
		||||
<link rel="next" href="Built_002dIn.html#Built_002dIn" title="Built-In">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Comparison"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Built_002dIn.html#Built_002dIn">Built-In</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Implementations.html#Implementations">Implementations</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h2 class="chapter">5 Comparison with other languages</h2>
 | 
			
		||||
 | 
			
		||||
<ul class="menu">
 | 
			
		||||
<li><a accesskey="1" href="Compared-assigning.html#Compared-assigning">Compared assigning</a>
 | 
			
		||||
<li><a accesskey="2" href="Compared-conditionals.html#Compared-conditionals">Compared conditionals</a>
 | 
			
		||||
<li><a accesskey="3" href="Compared-looping.html#Compared-looping">Compared looping</a>
 | 
			
		||||
<li><a accesskey="4" href="Compared-functions.html#Compared-functions">Compared functions</a>
 | 
			
		||||
</ul>
 | 
			
		||||
 | 
			
		||||
</body></html>
 | 
			
		||||
 | 
			
		||||
@@ -1,83 +0,0 @@
 | 
			
		||||
<html lang="en">
 | 
			
		||||
<head>
 | 
			
		||||
<title>Conditionals - Enigma</title>
 | 
			
		||||
<meta http-equiv="Content-Type" content="text/html">
 | 
			
		||||
<meta name="description" content="Enigma">
 | 
			
		||||
<meta name="generator" content="makeinfo 4.13">
 | 
			
		||||
<link title="Top" rel="start" href="index.html#Top">
 | 
			
		||||
<link rel="up" href="Language.html#Language" title="Language">
 | 
			
		||||
<link rel="prev" href="Functions.html#Functions" title="Functions">
 | 
			
		||||
<link rel="next" href="Loops.html#Loops" title="Loops">
 | 
			
		||||
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
 | 
			
		||||
<!--
 | 
			
		||||
This manual is for Enigma, version 0.1.
 | 
			
		||||
Copyright (C) 2010 Niels Serup
 | 
			
		||||
 | 
			
		||||
     Permission is granted to copy, distribute and/or modify this
 | 
			
		||||
     document under the terms of the GNU Free Documentation License,
 | 
			
		||||
     Version 1.3 or any later version published by the Free Software
 | 
			
		||||
     Foundation; with no Invariant Sections, no Front-Cover Texts, and
 | 
			
		||||
     no Back-Cover Texts.  A copy of the license is included in the
 | 
			
		||||
     section entitled "GNU Free Documentation License".
 | 
			
		||||
 | 
			
		||||
     This document is also available under the terms of the Creative
 | 
			
		||||
     Commons Attribution-Share Alike 3.0 (or any later version)
 | 
			
		||||
     Unported license. A copy of the license is available at
 | 
			
		||||
     `http://creativecommons.org/licenses/by-sa/3.0/legalcode'.
 | 
			
		||||
   -->
 | 
			
		||||
<meta http-equiv="Content-Style-Type" content="text/css">
 | 
			
		||||
<style type="text/css"><!--
 | 
			
		||||
  pre.display { font-family:inherit }
 | 
			
		||||
  pre.format  { font-family:inherit }
 | 
			
		||||
  pre.smalldisplay { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallformat  { font-family:inherit; font-size:smaller }
 | 
			
		||||
  pre.smallexample { font-size:smaller }
 | 
			
		||||
  pre.smalllisp    { font-size:smaller }
 | 
			
		||||
  span.sc    { font-variant:small-caps }
 | 
			
		||||
  span.roman { font-family:serif; font-weight:normal; } 
 | 
			
		||||
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
 | 
			
		||||
--></style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<div class="node">
 | 
			
		||||
<a name="Conditionals"></a>
 | 
			
		||||
<p>
 | 
			
		||||
Next: <a rel="next" accesskey="n" href="Loops.html#Loops">Loops</a>,
 | 
			
		||||
Previous: <a rel="previous" accesskey="p" href="Functions.html#Functions">Functions</a>,
 | 
			
		||||
Up: <a rel="up" accesskey="u" href="Language.html#Language">Language</a>
 | 
			
		||||
<hr>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<h3 class="section">2.8 Conditionals</h3>
 | 
			
		||||
 | 
			
		||||
<p>Any value can be related to another value. 78 is less than 85. 2 equals
 | 
			
		||||
2. "Hi" is not "Bye". Enigma comes with a basic set of functions that
 | 
			
		||||
can be used to test these relations. The functions <code>greater</code>,
 | 
			
		||||
<code>lesser</code>, <code>equal</code>, <code>not</code>, <code>or</code> and <code>and</code> are
 | 
			
		||||
available. These functions return either true or false. To run a
 | 
			
		||||
function on the condition that a relational function has returned true,
 | 
			
		||||
use the function <code>act</code>.
 | 
			
		||||
 | 
			
		||||
   <p>While <code>lesser</code> and <code>greater</code> are aimed at numbers only,
 | 
			
		||||
and <code>and</code>, <code>or</code> and <code>not</code> are aimed at booleans only,
 | 
			
		||||
<code>equal</code> can be used on all objects. It tests for all equalities.
 | 
			
		||||
 | 
			
		||||
<pre class="verbatim">2 = a;
 | 
			
		||||
4 = b;
 | 
			
		||||
 | 
			
		||||
a 2 ! add | temp b ! equal = cond1;
 | 
			
		||||
"47" ! num | temp 48 ! greater = cond2;
 | 
			
		||||
 | 
			
		||||
cond1 cond2 ! and | temp write stdout "4 = 4 and 47 > 48\n" ! act;
 | 
			
		||||
cond1 cond2 ! or | temp write stdout "4 = 4 or 47 > 48\n" ! act;
 | 
			
		||||
cond2 ! not | cond1 temp ! and | temp write stdout "4 = 4 and !(47 >
 | 
			
		||||
48)\n" ! act;
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
   <p>Even simpler, one can do this (though there's no real need for it):
 | 
			
		||||
<pre class="verbatim"># Instead of stdout "Hello" !write;
 | 
			
		||||
true write stdout "Hello" !act;
 | 
			
		||||
</pre>
 | 
			
		||||
 | 
			
		||||
   </body></html>
 | 
			
		||||
 | 
			
		||||