Skip to content

Instantly share code, notes, and snippets.

@michaelrauh
michaelrauh / Dockerfile
Created August 12, 2016 00:53
Builds ubuntu 14.04 with C unit testing framework Check ready to run, and current dir mounted. Build with: docker build -t [name] . Run with: docker run --rm --name [name] -it -v $(pwd):/code [name]
FROM ubuntu:14.04
RUN apt-get update && apt-get install -y make gcc check git
VOLUME ["/code"]
WORKDIR /code
CMD 'bash'
diff --git a/1.1.md b/1.1.md
index a2611b2..ed1dbd3 100644
--- a/1.1.md
+++ b/1.1.md
@@ -1 +1 @@
-read 1: \n | v | / 3 | floor | -2 | ^ | sum
+read 1: \n | / 3 | floor | - 2 | ^ | sum
diff --git a/1.rkt b/1.rkt
new file mode 100644
index 0000000..36cedbd
diff --git a/expander.rkt b/expander.rkt
index dec4ba9..e6b71d6 100644
--- a/expander.rkt
+++ b/expander.rkt
@@ -2,8 +2,7 @@
(define-macro (aoclop-module-begin (aoclop-program BODY ...))
#'(#%module-begin
- BODY ...
- (display data)))
diff --git a/expander.rkt b/expander.rkt
index dec4ba9..61eb98f 100644
--- a/expander.rkt
+++ b/expander.rkt
@@ -1,26 +1,18 @@
#lang br/quicklang
-(define-macro (aoclop-module-begin (aoclop-program BODY ...))
+(define-macro (aoclop-module-begin (aoclop-program READ (op FUNC ARG)))
#'(#%module-begin
diff --git a/lexer.rkt b/lexer.rkt
index 3ab0a1a..ab5d78b 100644
--- a/lexer.rkt
+++ b/lexer.rkt
@@ -8,8 +8,10 @@
["read:" (token 'READ lexeme)]
["\n" (token 'NEWLINE lexeme)]
["nl" (token 'DELIMITER lexeme)]
- ["/" (token 'OP lexeme)]
+ ["floor" (token 'OP lexeme)]
diff --git a/1.txt b/1.txt
index 0c7d053..1f79766 100644
--- a/1.txt
+++ b/1.txt
@@ -1,4 +1,4 @@
-3
+3.7
6
9
12
diff --git a/scratch.rkt b/scratch.rkt
index 248d5e2..e57968e 100644
--- a/scratch.rkt
+++ b/scratch.rkt
@@ -1,14 +1,8 @@
#lang racket
(define-syntax-rule (aoclop-program read-expr (scope-block (all-ops operation ...)))
- (map (λ (x) (operations (operation ... x))) read-expr))
+ (map (λ (x) (x-then-ops-in-order (x (operation ...)))) read-expr))
diff --git a/1.rkt b/1.rkt
new file mode 100644
index 0000000..838514c
--- /dev/null
+++ b/1.rkt
@@ -0,0 +1,2 @@
+#lang aoclop
+read: 1 nl | v | floor | floor | floor | floor | ^
diff --git a/expander.rkt b/expander.rkt
new file mode 100644
diff --git a/1.rkt b/1.rkt
index 838514c..5f867d9 100644
--- a/1.rkt
+++ b/1.rkt
@@ -1,2 +1,2 @@
#lang aoclop
-read: 1 nl | v | floor | floor | floor | floor | ^
+read: 1 nl | v | identity | floor | identity | ^
diff --git a/cat.rkt b/cat.rkt
index a5af145..7fd706d 100644
diff --git a/a5af145 b/7fd706d
index a5af145..7fd706d 100644
--- a/a5af145
+++ b/7fd706d
@@ -1,2 +1,2 @@
#lang aoclop
-read: 1 nl
+read: 1 nl | v | identity | ^