Version: 1
Status: Under development
License: BSD
Download: /files/project_builds/sire.r1.tar_.gz
This project is an implementation of a simple imperative programming language called sire that allows the creation and placement of processes across a system at runtime. It includes a complete compiler and accompanying runtime targeted at XS1 devices, but in particular the XMP-64.
In essence, a sire program is compiled into a binary that is loaded only onto node 0, core 0 but when it executes, it is able to transmit descriptions of processes to remote cores in the system and invoke their execution. This is provided in the language by the 'on' statement. For example, the statement 'on 5 do process()' is exactly the same as a regular call 'process()' except that it is executed on the remote core 5, leaving the original core free to get on with other work.
For more details on all of this, a readme file is included in with the source code explaining how to get started with the source code and there are two accompanying documents:
- sire language definition
- sire language implementation notes
Dynamic process creation and the sire language
-
- Experienced Member
- Posts: 99
- Joined: Mon Dec 14, 2009 1:01 pm
-
- XCore Legend
- Posts: 1274
- Joined: Thu Dec 10, 2009 10:20 pm
getting a "HTTP Status 404 - /pgrad/hanlon/projects/" on that web site link
-
- XCore Expert
- Posts: 577
- Joined: Tue Sep 08, 2009 5:15 pm
Works for me, I think it has been fixed :-)
-
- XCore Legend
- Posts: 1274
- Joined: Thu Dec 10, 2009 10:20 pm
Works now, was just missing the '.jsp' me thinks
-
- XCore Legend
- Posts: 1274
- Joined: Thu Dec 10, 2009 10:20 pm
This is a fascinating project, I see it is opensourced, will you be putting it on github or similar for contributions (hopes)?
regards
Al
regards
Al
-
- Experienced Member
- Posts: 99
- Joined: Mon Dec 14, 2009 1:01 pm
I'm happy for the source code to be used however. If there was interest it might be good idea to setup a public repository - for instance to do something more general with the compiler, but in terms of what I'm doing with it, it'll remain quite specific.