Difference between revisions of "Silmaril"
m |
|||
Line 24: | Line 24: | ||
From a new directory, run |
From a new directory, run |
||
⚫ | |||
+ | <source lang="bash"> |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
+ | </source> |
||
This has created a new project with a simple hello world file. Next, you will need to compile |
This has created a new project with a simple hello world file. Next, you will need to compile |
||
the project using: |
the project using: |
||
+ | <source lang="bash"> |
||
sil compile |
sil compile |
||
+ | </source> |
||
This will parse the entire commit into sil object code, and sent it to the server. |
This will parse the entire commit into sil object code, and sent it to the server. |
Revision as of 12:20, 4 January 2017
The Silmaril programming language is built from the ground up for bleeding edge HPC. It has the following, fully automatic, killer features:
- Git-like source code versioning
- Cryptographically secure, distributed filesystem storage
- First-class objects
- functions
- types
- modules (aka. tables / record types / directories / structs / ML "Functors")
- Extensible primitive operations (JIT C-compilation)
- Extensible binary object types (i.e. opaque pointers)
This documentation explains how to get up and running with the latest distribution.
To interact with the server, you'll need an rsa key. The process for creating one is easy: <source lang="bash"> mkdir ~/.sil chmod 0700 ~/.sil sil generate "Your Name" "email@example.com" >~/.sil/config </source> This will set up your sil environment with a new identity and server. Next, send your name and public key (from that file) to me by email.
Now, you are ready to create a new sil project! From a new directory, run
<source lang="bash"> git init git remote add --track master origin git@github.com:<username>/<project name>.git echo '"Hello world!"' >hello.sil </source>
This has created a new project with a simple hello world file. Next, you will need to compile the project using:
<source lang="bash">
sil compile
</source>
This will parse the entire commit into sil object code, and sent it to the server. Compilation writes the sil.sha1 file as a side-effect. This file contains the id of the project source, and is used for communicating with the server.
With setup out of the way, it's time to write some sil code! You can get started by reading the docs and examples: ([1]).