deleted web and dist
@@ -1 +0,0 @@
|
||||
.. include:: ../doc/docs.txt
|
||||
@@ -1 +0,0 @@
|
||||
%(body)s
|
||||
@@ -1,19 +0,0 @@
|
||||
"There are two major products that come out of Berkeley: LSD and UNIX.
|
||||
We don't believe this to be a coincidence." -- Jeremy S. Anderson.
|
||||
|
||||
Here you can download the latest version of the Nimrod Compiler.
|
||||
Please choose your platform:
|
||||
* source for Linux (i386): `<download/nimrod_linux_i386_0.6.0.zip>`_
|
||||
* source for Linux (amd64): `<download/nimrod_linux_amd64_0.6.0.zip>`_
|
||||
* source for Linux (sparc, untested!): `<download/nimrod_linux_sparc_0.6.0.zip>`_
|
||||
* source for Mac OS X (i386): `<download/nimrod_macosx_i386_0.6.0.zip>`_
|
||||
* source for Mac OS X (amd64, untested!): `<download/nimrod_macosx_amd64_0.6.0.zip>`_
|
||||
* source for Solaris (i386, untested!): `<download/nimrod_solaris_i386_0.6.0.zip>`_
|
||||
* source for Solaris (amd64, untested!): `<download/nimrod_solaris_amd64_0.6.0.zip>`_
|
||||
* source for Solaris (sparc, untested!): `<download/nimrod_solaris_sparc_0.6.0.zip>`_
|
||||
* source for Windows (i386): `<download/nimrod_windows_i386_0.6.0.zip>`_
|
||||
* source for Windows (amd64, untested!): `<download/nimrod_windows_amd64_0.6.0.zip>`_
|
||||
* installer for Windows (i386): `<download/nimrod_windows_0.6.0.exe>`_
|
||||
(includes LLVM and everything else you need)
|
||||
|
||||
.. include:: ../install.txt
|
||||
@@ -1,64 +0,0 @@
|
||||
====
|
||||
Home
|
||||
====
|
||||
|
||||
"The most important thing in the programming language is the name. A language
|
||||
will not succeed without a good name. I have recently invented a very good
|
||||
name and now I am looking for a suitable language."
|
||||
-- D. E. Knuth
|
||||
|
||||
**This page is about the Nimrod programming language, which combines Lisp's
|
||||
power with Python's readability and C++'s performance.**
|
||||
|
||||
Welcome to the Nimrod programming language
|
||||
------------------------------------------
|
||||
|
||||
**Nimrod** is a new statically typed, imperative
|
||||
programming language, that supports procedural, functional, object oriented and
|
||||
generic programming styles while remaining simple and efficient. A special
|
||||
feature that Nimrod inherited from Lisp is that Nimrod's abstract syntax tree
|
||||
(*AST*) is part of the specification - this allows a powerful macro system which
|
||||
can be used to create domain specific languages.
|
||||
|
||||
*Nimrod* is a compiled, garbage-collected systems programming language
|
||||
which has an excellent productivity/performance ratio. Nimrod's design
|
||||
focuses on the 3E: efficiency, expressiveness, elegance (in the order of
|
||||
priority).
|
||||
|
||||
|
||||
Some more of Nimrod's highlights:
|
||||
|
||||
* Native code generation (currently via compilation to C).
|
||||
* Garbage collection, but not dependant on a Virtual Machine.
|
||||
* Portable: The Nimrod Compiler runs on Windows, Linux and Mac OS X.
|
||||
Porting to other platforms is easy.
|
||||
* System programming features: Ability to manage your own memory and access the
|
||||
hardware directly. You will never have to use C/C++ for that again!
|
||||
* Zero-overhead iterators.
|
||||
* Modern type system with local type inference, tuples, variants, etc.
|
||||
* User-defineable operators; new operators often easier to read than
|
||||
overloaded ones.
|
||||
* High level datatypes: strings, sets, sequences, etc.
|
||||
* Compile time evaluation without resorting to meta-programming facilities.
|
||||
* Forward compability: If later versions of the language introduce new
|
||||
keywords old code won't break!
|
||||
* Bindings to GTK2, the Windows API, the POSIX API. New bindings are easily
|
||||
generated in a semi-atomatic way.
|
||||
* A plugable parser system: If you don't like Nimrod's syntax, you can plug
|
||||
in a parser and a source renderer for your own syntax!
|
||||
* A documentation generator with an internal reStructuredText parser: This
|
||||
can also be used to write documentation that is not embedded into the
|
||||
source code. This makes documentation writing a joy (well, almost).
|
||||
* A Pascal to Nimrod conversion utility: This is particularly useful for
|
||||
generating bindings to any library which has a Pascal binding
|
||||
(these are many!).
|
||||
|
||||
..
|
||||
The Zen of Nimrod
|
||||
-----------------
|
||||
|
||||
* Faster computers are for solving bigger problems, not wasting cycles.
|
||||
* Static is better than dynamic: More efficient, more understandable,
|
||||
better verifyable.
|
||||
* Don't criple the language in the name of simplicity.
|
||||
* Be backward and *forward* compatible.
|
||||
@@ -1 +0,0 @@
|
||||
Visit our project page at Launchpad: https://launchpad.net/nimrod.
|
||||
31
web/news.txt
@@ -1,31 +0,0 @@
|
||||
====
|
||||
News
|
||||
====
|
||||
|
||||
Developers needed
|
||||
=================
|
||||
Yes, this is nothing new. If you are interested to help designing and
|
||||
implementing the new programming language Nimrod, visit our project page at
|
||||
Launchpad: https://launchpad.net/nimrod and contact me.
|
||||
|
||||
|
||||
2008-08-22 Version 0.6.0 released
|
||||
=================================
|
||||
|
||||
Nimrod version 0.6.0 has been released! Get it `here <./download.html>`_.
|
||||
**This is the first version of the compiler that is able to compile itself!**
|
||||
A nice side-effect from this is that a source-based installation does not
|
||||
depend on FreePascal any longer.
|
||||
|
||||
Changes:
|
||||
* various bug fixes, too many to list them here
|
||||
* cleaned up the type system: records are now superfluous and not
|
||||
supported anymore
|
||||
* improved the performance of the garbage collector
|
||||
* new modules in the library:
|
||||
- ``parseopt``: a simple to use command line parser
|
||||
- ``hashes``: efficient computation of hash values
|
||||
- ``strtabs``: efficient mapping from strings to strings
|
||||
- ``parsecfg``: an efficient configuration file parser
|
||||
* macros and compile-time evaluation implemented (however, still experimental)
|
||||
* generics implemented (however, still experimental)
|
||||
138
web/question.txt
@@ -1,138 +0,0 @@
|
||||
===========================================
|
||||
Questions and Answers
|
||||
===========================================
|
||||
|
||||
General
|
||||
=======
|
||||
|
||||
`What is Nimrod?`:Q:
|
||||
**Nimrod** is a new statically typed, imperative
|
||||
programming language, that supports procedural, functional, object oriented and
|
||||
generic programming styles while remaining simple and efficient. A special
|
||||
feature that Nimrod inherited from Lisp is that Nimrod's abstract syntax tree
|
||||
(*AST*) is part of the specification - this allows a powerful macro system which
|
||||
can be used to create domain specific languages.
|
||||
|
||||
`How is Nimrod licensed?`:Q:
|
||||
The Nimrod compiler is GPL licensed, the runtime library is LGPL licensed.
|
||||
This means that you can use any license for your own programs developed with
|
||||
Nimrod. If I receive enough requests with good arguments, I may change the
|
||||
license of Nimrod to the BSD license.
|
||||
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
`Is bootstrapping without Python possible?`:Q:
|
||||
Yes. You then have to compile by hand. It is not difficult (but it is not
|
||||
easy either). Please read the code in the ``koch.py`` script how this is can
|
||||
be accomplished (look for the ``cmd_boot`` routine).
|
||||
|
||||
|
||||
`A source-based download depending on the platform?`:Q:
|
||||
The reason is that the C code *generated* by Nimrod is not
|
||||
portable (the compiler itself is, of course!). The generated C
|
||||
code is used for the installation, so you have to pick the right package.
|
||||
|
||||
|
||||
`Why is compilation so slow?`:Q:
|
||||
|
||||
*Compilation* is fast. The problem is that Nimrod always
|
||||
recompiles **everything**. In the next version, only modules that
|
||||
have changed will be recompiled.
|
||||
|
||||
Another issue may be that the C compiler that is called by Nimrod is slow.
|
||||
Especially GCC's compile times are a bad joke. On Linux you may be able to get
|
||||
`Tiny C <http://fabrice.bellard.free.fr/tcc/>`_ to work. TCC has excellent
|
||||
compile times. You should not use TCC for producing the release version
|
||||
though, as it has no optimizer.
|
||||
|
||||
|
||||
`Which version of Freepascal is needed to compile Nimrod?`:Q:
|
||||
|
||||
Version 2.0.0 or later. Earlier development versions like 1.9.6 may work,
|
||||
but 1.0.10 won't. Note that I have never compiled Nimrod with FPC's
|
||||
optimizer turned on; it may break things due to bugs in FPC (yes, this has
|
||||
happend!).
|
||||
|
||||
|
||||
`How do I build a shared library?`:Q:
|
||||
|
||||
This is currently not supported.
|
||||
|
||||
|
||||
`How do I use a different C compiler than the default one?`:Q:
|
||||
|
||||
Edit the ``config/nimrod.cfg`` file.
|
||||
Change the value of the ``cc`` variable to one of the following:
|
||||
|
||||
============== ============================================
|
||||
Abbreviation C/C++ Compiler
|
||||
============== ============================================
|
||||
``dmc`` Digital Mars C++
|
||||
``wcc`` Watcom C++ (now unsupported!)
|
||||
``bcc`` Borland C++ (including Borland C++Builder)
|
||||
``vcc`` Microsoft's Visual C++
|
||||
``gcc`` Gnu C
|
||||
``pcc`` Pelles C (now unsupported!)
|
||||
``lcc`` Lcc-win32 (now unsupported!)
|
||||
``tcc`` Tiny C (now unsupported!)
|
||||
``llvm_gcc`` LLVM-GCC compiler
|
||||
``icc`` Intel C++ compiler
|
||||
``ucc`` Generic UNIX C compiler
|
||||
============== ============================================
|
||||
|
||||
If your C compiler is not in the above list, try using the
|
||||
*generic UNIX C compiler* (``ucc``). If the C compiler needs
|
||||
different command line arguments try the ``--passc`` and ``--passl`` switches.
|
||||
|
||||
`The linker outputs strange errors about missing symbols`:Q:
|
||||
|
||||
I have seen this bug only with the GNU linker. The reason for this unknown.
|
||||
Try recompiling your code with the ``--c_file_cache:off`` command line switch.
|
||||
|
||||
|
||||
`Calling the C compiler fails - what's wrong?`:Q:
|
||||
|
||||
First try to edit the path to your C compiler in the
|
||||
``config/nimrod.cfg`` file. For the Windows version bundled with
|
||||
LLVM search for the line containing ``llvm_gcc.path``. Set this
|
||||
variable to the ``bin`` directory of LLVM.
|
||||
|
||||
Many C compilers need special environment variables to work
|
||||
properly. Although Nimrod tries hard to set them correctly (see
|
||||
``extccomp.pas`` for details), this may fail if you use a
|
||||
different version of the C compiler. The solution is to
|
||||
ensure that all environment variables are set correctly.
|
||||
|
||||
You can set environment variables temporarily by using the
|
||||
``@putenv "key" "val"`` directive in the ``config/nimrod.cfg``
|
||||
configuration file. There are also ``@append_env`` and
|
||||
``@prepend_env`` directives for appending or prepending
|
||||
to environment variables.
|
||||
|
||||
|
||||
`Calling the C compiler still fails`:Q:
|
||||
|
||||
Try to call the C compiler directly by doing the following::
|
||||
|
||||
nimrod --compile_only --gen_script your_path/your_file
|
||||
sh ./your_path/rod_gen/compile_your_file.sh
|
||||
|
||||
|
||||
Questions about the Nimrod language
|
||||
===================================
|
||||
|
||||
`How to overload the ``in`` operator?`:Q:
|
||||
|
||||
The ``in`` and ``not_in`` operators are implemented as templates. The reason is
|
||||
that these operators need a reverse unification algorithm (don't ask). See the
|
||||
``system.nim`` module for a deeper explanation. The solution is to implement a
|
||||
simple ``in_Operator`` proc where the arguments are the other way round::
|
||||
|
||||
proc in_operator(s: string, c: char): bool =
|
||||
for x in items(s):
|
||||
if x == c: return True
|
||||
return False
|
||||
|
||||
writeln(stdout, 'z' in "abcdz") # now works!
|
||||
|
Before Width: | Height: | Size: 224 B |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 186 B |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 165 B |
|
Before Width: | Height: | Size: 166 B |
|
Before Width: | Height: | Size: 201 B |
@@ -1,398 +0,0 @@
|
||||
/* global */
|
||||
html{height: 100%;}
|
||||
|
||||
body
|
||||
{ font-family: verdana, arial, sans-serif;
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
font-size: .70em;
|
||||
}
|
||||
|
||||
pre, tt
|
||||
{
|
||||
font-size: 130%;
|
||||
}
|
||||
|
||||
p
|
||||
{ margin: 0px;
|
||||
padding: 0px 0px 16px 0px;
|
||||
line-height: 1.7em;
|
||||
}
|
||||
|
||||
#column2 h1
|
||||
{ font-family: arial, sans-serif;
|
||||
letter-spacing: .1em;
|
||||
}
|
||||
|
||||
#column2 h2
|
||||
{ margin: 0px;
|
||||
padding: 0px 0px 4px 0px;
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
img{border: 0px;}
|
||||
|
||||
a.reference{outline: none;}
|
||||
|
||||
/* image positioning - left, right and center */
|
||||
.left
|
||||
{ float: left;
|
||||
padding: 0px 8px 0px 0px;
|
||||
}
|
||||
|
||||
.right
|
||||
{ float: right;
|
||||
padding: 0px 0px 0px 8px;
|
||||
}
|
||||
|
||||
.center
|
||||
{ display: block;
|
||||
text-align: center;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
/* block quote */
|
||||
blockquote
|
||||
{ margin: 20px 0px 20px 0px;
|
||||
padding: 10px 20px 0px 20px;
|
||||
border-left: 8px solid;
|
||||
}
|
||||
|
||||
/* unordered list */
|
||||
ul
|
||||
{ margin: 2px 0px 16px 16px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
ul li
|
||||
{ list-style-type: square;
|
||||
margin: 0px 0px 6px 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
/* ordered list */
|
||||
ol
|
||||
{ margin: 8px 0px 0px 24px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
ol li
|
||||
{ margin: 0px 0px 11px 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
/* main container */
|
||||
#main
|
||||
{ width: 780px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
/* links above the logo / footer */
|
||||
#links, #footer
|
||||
{ margin-left: auto;
|
||||
margin-right: auto;
|
||||
padding: 10px 21px 0px 19px;
|
||||
width: 720px;
|
||||
height: 26px;
|
||||
font-size: 94%;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
#links{text-align: right;}
|
||||
|
||||
#footer{text-align: center;}
|
||||
|
||||
#links a.reference, #footer a.reference{text-decoration: none;}
|
||||
|
||||
#links a.reference:hover, #footer a.reference:hover{text-decoration: underline;}
|
||||
|
||||
/* logo */
|
||||
#logo
|
||||
{ margin-left: auto;
|
||||
margin-right: auto;
|
||||
width: 760px;
|
||||
height: 100px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
#logo h1
|
||||
{ margin: 0px;
|
||||
padding: 41px 0px 0px 19px;
|
||||
font-size: 150%;
|
||||
letter-spacing: .2em;
|
||||
}
|
||||
|
||||
/* navigation menu */
|
||||
#menu
|
||||
{ height: 42px;
|
||||
width: 760px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
#menu ul{margin: 0px auto;}
|
||||
|
||||
#menu li
|
||||
{ float: left;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#menu li a, #menu li a:visited
|
||||
{ display: block;
|
||||
float: left;
|
||||
height: 37px;
|
||||
text-decoration: none;
|
||||
padding: 3px 19px 2px 19px;
|
||||
text-transform: uppercase;
|
||||
color: #DBD7D1;
|
||||
}
|
||||
|
||||
/* main content */
|
||||
#content
|
||||
{ margin-left: auto;
|
||||
margin-right: auto;
|
||||
width: 760px;
|
||||
height: auto;
|
||||
padding: 0px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* column 1 - contains sidebar items */
|
||||
#column1
|
||||
{ width: 207px;
|
||||
float: right;
|
||||
padding: 16px 0px 15px 0px;
|
||||
}
|
||||
|
||||
.sidebaritem
|
||||
{ text-align: left;
|
||||
width: 188px;
|
||||
float: left;
|
||||
margin: 0px 0px 25px 0px;
|
||||
}
|
||||
|
||||
.sbihead
|
||||
{ height: 14px;
|
||||
width: 188px;
|
||||
padding: 5px 0px 5px 19px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.sbihead h1
|
||||
{ padding: 0px;
|
||||
margin: 0px;
|
||||
font-weight: bold;
|
||||
font-size: 112%;
|
||||
}
|
||||
|
||||
#column1 h1 a, #column1 h1 a:hover, #column1 h1 a:visited
|
||||
{
|
||||
text-decoration:none;
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
.sbicontent{padding: 14px 8px 8px 19px;}
|
||||
|
||||
.sbicontent p
|
||||
{ line-height: 14px;
|
||||
padding: 0px 0px 8px 0px;
|
||||
}
|
||||
|
||||
.sbilinks{padding: 0px;}
|
||||
|
||||
.sbilinks ul{margin: 0px auto;}
|
||||
|
||||
.sbilinks li
|
||||
{ margin: 0px;
|
||||
float: left;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.sbilinks li a.reference , .sbilinks li a.reference:hover
|
||||
{ float: left;
|
||||
height: 16px;
|
||||
text-decoration: none;
|
||||
padding: 5px 0px 4px 19px;
|
||||
width: 188px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
/* column 2 - page content */
|
||||
#column2
|
||||
{ text-align: justify;
|
||||
width: 512px;
|
||||
float: left;
|
||||
padding: 12px 3px 15px 19px;
|
||||
}
|
||||
|
||||
#column2 h1
|
||||
{ padding: 6px 0px 4px 0px;
|
||||
margin: 0px 0px 12px 0px;
|
||||
border-bottom: 1px solid;
|
||||
/* font-size: 150%; */
|
||||
text-transform: uppercase;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.sidebaritem a.reference , .sidebaritem a.reference:hover
|
||||
{ padding: 0px 0px 2px 0px;
|
||||
text-decoration: none;
|
||||
border-bottom: 1px dashed;
|
||||
}
|
||||
|
||||
.sidebaritem a.reference:hover{border-bottom: 1px solid;}
|
||||
|
||||
/* contact page - form layout */
|
||||
form{margin-top: 0px;}
|
||||
|
||||
div.row
|
||||
{ clear: both;
|
||||
width: 448px;
|
||||
}
|
||||
|
||||
div.row span.formlabel
|
||||
{ float: left;
|
||||
width: 150px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
div.row span.forminput
|
||||
{ float: right;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
div.spacer
|
||||
{ clear: both;
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
input, textarea
|
||||
{ width: 259px;
|
||||
font-family: verdana, arial, sans-serif;
|
||||
border: 1px solid;
|
||||
font-size: 100%;
|
||||
margin: 2px;
|
||||
}
|
||||
|
||||
.submit
|
||||
{ font-family: verdana, arial, sans-serif;
|
||||
border: 1px solid;
|
||||
width: 70px;
|
||||
height: 22px;
|
||||
cursor: pointer;
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
html{height: 100%;}
|
||||
|
||||
body
|
||||
{ background: #837560;
|
||||
color: #70695A;
|
||||
}
|
||||
|
||||
blockquote
|
||||
{ background: #FFFFFF;
|
||||
color: #70695A;
|
||||
border-color: #767676;
|
||||
}
|
||||
|
||||
#main
|
||||
{ background: #FFFFFF url(back.png) repeat-y;
|
||||
color: #70695A;
|
||||
}
|
||||
|
||||
#links, #footer, #menu, #menu li a.reference
|
||||
{ background: #FFFFFF url(menu.png);
|
||||
color: #DBD7D1;
|
||||
border-color: #D7D7D7;
|
||||
}
|
||||
|
||||
#links a.reference, #footer a.reference,
|
||||
#links a.reference:hover, #footer a.reference:hover
|
||||
{ background: transparent;
|
||||
color: #DBD7D1;
|
||||
}
|
||||
|
||||
#logo
|
||||
{ background: #FFFFFF url(logo.jpg) no-repeat;
|
||||
color: #70695A;
|
||||
}
|
||||
|
||||
#logo h1
|
||||
{ background: transparent;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
#column2 h1, #column2 h1 a.reference,
|
||||
#column2 h2, #column2 h2 a.reference
|
||||
{ background: transparent;
|
||||
color: #CE7014;
|
||||
border-color: #CAAE90;
|
||||
font-size: 150%;
|
||||
}
|
||||
|
||||
#column2 h2, #column2 h2 a.reference {
|
||||
font-size: 110%;
|
||||
}
|
||||
|
||||
#menu li a:hover, #menu li a#selected,
|
||||
#menu li a#selected:hover
|
||||
{ background: #FFFFFF url(menu_hover.png);
|
||||
color: #70695A;
|
||||
}
|
||||
|
||||
#content
|
||||
{ background: transparent;
|
||||
color: #111; /* #70695A; */
|
||||
}
|
||||
|
||||
#column2 a.reference, #column2 a.reference:hover {
|
||||
color: #fb7f03;
|
||||
}
|
||||
|
||||
#column2 a.reference:visited {
|
||||
color: #7b5224;
|
||||
}
|
||||
|
||||
.sidebaritem, .sidebaritem a.reference, .sidebaritem a.reference:hover
|
||||
{ background: transparent;
|
||||
color: #DBD7D1;
|
||||
}
|
||||
|
||||
.sbihead
|
||||
{ background: #FFFFFF url(sbi_header.png);
|
||||
color: #70695A;
|
||||
}
|
||||
|
||||
.sbihead h1
|
||||
{ background: transparent;
|
||||
color: #70695A;
|
||||
}
|
||||
|
||||
.sbilinks li a.reference
|
||||
{ background: #FFFFFF url(link.png);
|
||||
color: #DBD7D1;
|
||||
}
|
||||
|
||||
.sbilinks li a.reference:hover
|
||||
{ background: #B7B7B7;
|
||||
color: #CE7014;
|
||||
}
|
||||
|
||||
input, textarea
|
||||
{ background: #FFFFFF;
|
||||
color: #70695A;
|
||||
border-color: #CAAE90;
|
||||
}
|
||||
|
||||
span.Q {
|
||||
font-size: 120%;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
span.newsdate {
|
||||
font-size: 110%;
|
||||
font-weight: bold;
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
|
||||
<head>
|
||||
<title>Nimrod Programming System</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
|
||||
<link rel="stylesheet" type="text/css" href="style/style.css" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="main">
|
||||
<div id="links">
|
||||
<!-- **** INSERT LINKS HERE **** -->
|
||||
</div>
|
||||
<div id="logo"><h1>Nimrod Programming System</h1></div>
|
||||
<div id="content">
|
||||
<div id="menu">
|
||||
<ul>
|
||||
#for $name, $t in $tabs
|
||||
#if $tab == $t
|
||||
<li><a id="selected" href="${t}.html" title = "Nimrod - $name">$name</a></li>
|
||||
#else
|
||||
<li><a href="${t}.html" title = "Nimrod - $name">$name</a></li>
|
||||
#end if
|
||||
#end for
|
||||
</ul>
|
||||
</div>
|
||||
<div id="column1">
|
||||
<div class="sidebaritem">
|
||||
<div class="sbihead">
|
||||
<h1>latest news</h1>
|
||||
</div>
|
||||
<div class="sbicontent">
|
||||
$ticker
|
||||
</div>
|
||||
</div>
|
||||
<div class="sidebaritem">
|
||||
<div class="sbihead">
|
||||
<h1>additional links</h1>
|
||||
</div>
|
||||
<div class="sbilinks">
|
||||
<!-- **** INSERT ADDITIONAL LINKS HERE **** -->
|
||||
<ul>
|
||||
<li><a class="reference" href="http://llvm.org">LLVM</a></li>
|
||||
<li><a class="reference" href="http://gcc.gnu.org">GCC</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="column2">
|
||||
$content
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
copyright © 2008 Andreas Rumpf | Last update: $lastupdate
|
||||
| <a class="reference" href="http://validator.w3.org/check?uri=referer">XHTML 1.1</a>
|
||||
| <a class="reference" href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a>
|
||||
| <a class="reference" href="http://www.dcarter.co.uk">design by dcarter</a>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
1436
web/theindex.txt
@@ -1,137 +0,0 @@
|
||||
/*
|
||||
:Authors: Ian Bicking, Michael Foord
|
||||
:Contact: fuzzyman@voidspace.org.uk
|
||||
:Date: 2005/08/26
|
||||
:Version: 0.1.0
|
||||
:Copyright: This stylesheet has been placed in the public domain.
|
||||
|
||||
Stylesheet for Docutils.
|
||||
Based on ``blue_box.css`` by Ian Bicking
|
||||
and ``html4css1.css`` revision 1.46.
|
||||
*/
|
||||
|
||||
@import url(html4css1.css);
|
||||
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
}
|
||||
|
||||
em, i {
|
||||
/* Typically serif fonts have much nicer italics */
|
||||
font-family: Times New Roman, Times, serif;
|
||||
}
|
||||
|
||||
a.target {
|
||||
color: blue;
|
||||
}
|
||||
|
||||
a.target {
|
||||
color: blue;
|
||||
}
|
||||
|
||||
a.toc-backref {
|
||||
text-decoration: none;
|
||||
color: black;
|
||||
}
|
||||
|
||||
a.toc-backref:hover {
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
background-color: #cccccc;
|
||||
}
|
||||
|
||||
div.attention, div.caution, div.danger, div.error, div.hint,
|
||||
div.important, div.note, div.tip, div.warning {
|
||||
background-color: #cccccc;
|
||||
padding: 3px;
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
div.admonition p.admonition-title, div.hint p.admonition-title,
|
||||
div.important p.admonition-title, div.note p.admonition-title,
|
||||
div.tip p.admonition-title {
|
||||
text-align: center;
|
||||
background-color: #999999;
|
||||
display: block;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
div.attention p.admonition-title, div.caution p.admonition-title,
|
||||
div.danger p.admonition-title, div.error p.admonition-title,
|
||||
div.warning p.admonition-title {
|
||||
color: #cc0000;
|
||||
font-family: sans-serif;
|
||||
text-align: center;
|
||||
background-color: #999999;
|
||||
display: block;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
border: thin solid black;
|
||||
/* This makes the borders rounded on Mozilla, which pleases me */
|
||||
-moz-border-radius: 8px;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
h1 {
|
||||
background-color: #444499;
|
||||
color: #ffffff;
|
||||
border: medium solid black;
|
||||
}
|
||||
|
||||
h1 a.toc-backref, h2 a.toc-backref {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
h2 {
|
||||
background-color: #666666;
|
||||
color: #ffffff;
|
||||
border: medium solid black;
|
||||
}
|
||||
|
||||
h3, h4, h5, h6 {
|
||||
background-color: #cccccc;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
h3 a.toc-backref, h4 a.toc-backref, h5 a.toc-backref,
|
||||
h6 a.toc-backref {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
h1.title {
|
||||
text-align: center;
|
||||
background-color: #444499;
|
||||
color: #eeeeee;
|
||||
border: thick solid black;
|
||||
-moz-border-radius: 20px;
|
||||
}
|
||||
|
||||
table.footnote {
|
||||
padding-left: 0.5ex;
|
||||
}
|
||||
|
||||
table.citation {
|
||||
padding-left: 0.5ex
|
||||
}
|
||||
|
||||
pre.literal-block, pre.doctest-block {
|
||||
border: thin black solid;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.image img { border-style : solid;
|
||||
border-width : 2px;
|
||||
}
|
||||
|
||||
h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
|
||||
font-size: 100%;
|
||||
}
|
||||
|
||||
code, tt {
|
||||
color: #000066;
|
||||
}
|
||||