This is an Enigma Machine implementation in ATS programming language. Please visit this blog for more information.
License: GPL v3
files: | |
- /var/log/tomcat7/* | |
- /home/vagrant/server/*log* | |
destination: | |
host: logs.papertrailapp.com | |
port: 20895 |
sudo npm cache clean -f | |
sudo npm install -g n | |
sudo n stable |
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu saucy main" >> /etc/apt/sources.list | |
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu saucy main" >> /etc/apt/sources.list | |
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886 | |
apt-get update | |
apt-get install -y oracle-java8-installer |
FROM stackbrew/ubuntu:13.10 | |
RUN apt-get update | |
RUN apt-get install -y libgmp3-dev | |
RUN apt-get install -y make | |
RUN apt-get install -y gcc | |
RUN apt-get install -y build-essential | |
RUN apt-get install -y wget | |
RUN apt-get install -y bash |
#include "share/atspre_staload.hats" | |
staload UN = "prelude/SATS/unsafe.sats" | |
//make patscc -o lazy lazy.dats -DATS_MEMALLOC_LIBC | |
datatype list (a:t@ype) = | |
| list_cons of (a, lazy (list (a))) | |
| list_nil of () | |
#define nil list_nil |
var client = {}; | |
client.run = function (options) { | |
options = options || {}; | |
var socket = io.connect(options.remote || "http://localhost:8080"); | |
socket.on('connect', function() { | |
var term = new Terminal({ |
#include "share/atspre_staload.hats" | |
typedef matrix (a:t@ype) = mtrxszref (a) | |
extern fun {a:t@ype} matrix_transpose (matrix (a)): matrix (a) | |
extern fun {a:t@ype} foreach (matrix (a), (a, size_t, size_t) -<cloref1> void): matrix (a) | |
extern fun matrix_print (matrix (int)): void | |
implement {a} foreach (m, f) = let | |
val nrow = mtrxszref_get_nrow (m) |