diff options
Diffstat (limited to '2021/02/part2.tl')
-rw-r--r-- | 2021/02/part2.tl | 1016 |
1 files changed, 1016 insertions, 0 deletions
diff --git a/2021/02/part2.tl b/2021/02/part2.tl new file mode 100644 index 0000000..8bd775f --- /dev/null +++ b/2021/02/part2.tl @@ -0,0 +1,1016 @@ +(defvar x 0) +(defvar y 0) +(defvar aim 0) + +(defun forward (n) + (inc x n) + (inc y (* n aim))) + +(defun down (n) + (inc aim n)) + +(defun up (n) + (dec aim n)) + +(forward 9) +(forward 9) +(forward 3) +(down 2) +(forward 8) +(down 8) +(forward 1) +(down 6) +(down 9) +(down 9) +(forward 1) +(up 5) +(up 4) +(up 8) +(down 6) +(down 7) +(forward 4) +(forward 6) +(forward 2) +(forward 2) +(forward 4) +(down 2) +(down 6) +(forward 6) +(forward 9) +(up 4) +(up 6) +(down 2) +(forward 7) +(up 7) +(down 8) +(down 4) +(down 6) +(forward 1) +(down 2) +(up 1) +(forward 8) +(down 9) +(forward 6) +(up 9) +(down 8) +(forward 5) +(forward 8) +(down 8) +(up 3) +(up 9) +(down 2) +(down 2) +(forward 5) +(up 7) +(forward 5) +(down 6) +(forward 4) +(down 2) +(up 2) +(up 7) +(up 1) +(down 4) +(down 8) +(forward 6) +(down 2) +(forward 7) +(down 1) +(forward 7) +(forward 1) +(up 1) +(down 4) +(down 3) +(down 4) +(down 4) +(up 8) +(down 1) +(up 7) +(forward 8) +(down 5) +(up 1) +(down 4) +(down 3) +(forward 4) +(up 7) +(forward 1) +(down 4) +(down 2) +(down 4) +(up 8) +(up 6) +(down 1) +(up 3) +(down 5) +(forward 4) +(down 3) +(forward 9) +(down 9) +(forward 2) +(down 4) +(up 3) +(down 4) +(forward 1) +(forward 7) +(forward 9) +(forward 7) +(forward 3) +(forward 6) +(down 4) +(forward 7) +(down 5) +(down 1) +(forward 7) +(up 1) +(down 8) +(down 7) +(down 7) +(down 7) +(down 3) +(forward 4) +(forward 6) +(forward 6) +(forward 1) +(down 7) +(down 6) +(down 8) +(up 5) +(down 7) +(up 6) +(forward 9) +(down 7) +(down 1) +(down 9) +(forward 8) +(up 5) +(down 6) +(forward 3) +(up 2) +(down 1) +(forward 2) +(down 3) +(up 6) +(forward 8) +(forward 1) +(forward 3) +(down 9) +(forward 1) +(down 3) +(up 7) +(forward 8) +(up 8) +(down 7) +(down 2) +(forward 3) +(up 7) +(forward 6) +(down 7) +(down 6) +(up 5) +(forward 9) +(down 7) +(up 5) +(forward 6) +(up 5) +(up 6) +(forward 6) +(down 8) +(down 1) +(forward 7) +(forward 6) +(down 5) +(down 6) +(forward 9) +(down 6) +(up 5) +(forward 9) +(forward 4) +(down 1) +(forward 5) +(down 4) +(forward 5) +(forward 1) +(down 1) +(forward 4) +(down 5) +(forward 4) +(up 8) +(down 1) +(forward 6) +(down 5) +(forward 8) +(forward 8) +(forward 5) +(down 7) +(down 4) +(forward 4) +(up 1) +(up 8) +(down 6) +(up 5) +(forward 6) +(forward 5) +(forward 9) +(down 3) +(down 5) +(forward 3) +(down 6) +(forward 6) +(up 7) +(up 6) +(down 6) +(down 1) +(forward 8) +(forward 9) +(up 5) +(forward 8) +(forward 9) +(forward 9) +(down 2) +(down 8) +(forward 8) +(down 2) +(up 8) +(down 2) +(down 2) +(up 1) +(down 5) +(down 6) +(down 1) +(down 8) +(down 9) +(forward 3) +(forward 2) +(down 6) +(up 8) +(forward 9) +(forward 7) +(forward 1) +(down 8) +(up 8) +(forward 8) +(down 5) +(down 3) +(up 3) +(forward 6) +(forward 5) +(down 4) +(forward 4) +(down 4) +(forward 5) +(forward 9) +(forward 2) +(forward 9) +(down 1) +(down 3) +(down 6) +(forward 6) +(down 7) +(forward 3) +(forward 4) +(forward 1) +(down 6) +(forward 1) +(forward 4) +(forward 2) +(forward 2) +(forward 1) +(forward 2) +(down 1) +(up 2) +(forward 1) +(down 3) +(forward 8) +(down 3) +(down 9) +(forward 5) +(down 3) +(down 3) +(forward 2) +(forward 9) +(down 9) +(forward 4) +(down 2) +(forward 5) +(up 8) +(down 4) +(forward 5) +(down 1) +(forward 9) +(down 1) +(forward 7) +(forward 2) +(down 2) +(down 6) +(up 3) +(forward 7) +(up 4) +(forward 7) +(forward 6) +(down 8) +(forward 2) +(down 3) +(forward 9) +(forward 4) +(forward 8) +(down 6) +(forward 8) +(down 9) +(down 2) +(down 3) +(forward 1) +(down 5) +(down 3) +(forward 2) +(forward 7) +(down 4) +(down 3) +(forward 9) +(down 2) +(forward 2) +(forward 1) +(up 6) +(up 4) +(down 5) +(forward 5) +(up 8) +(down 7) +(forward 6) +(down 5) +(forward 3) +(forward 3) +(forward 7) +(up 9) +(up 6) +(down 5) +(up 7) +(forward 2) +(forward 5) +(down 9) +(down 6) +(forward 7) +(down 9) +(up 2) +(up 5) +(forward 1) +(forward 8) +(forward 9) +(up 8) +(forward 9) +(forward 5) +(up 9) +(down 4) +(down 7) +(forward 2) +(forward 1) +(down 4) +(up 8) +(down 5) +(down 7) +(down 9) +(down 3) +(down 9) +(up 8) +(up 7) +(up 8) +(down 8) +(down 2) +(down 6) +(down 6) +(up 5) +(up 9) +(forward 1) +(down 8) +(up 4) +(up 3) +(forward 7) +(up 7) +(down 3) +(up 1) +(forward 3) +(down 7) +(forward 8) +(forward 2) +(down 6) +(down 2) +(up 7) +(up 5) +(forward 7) +(forward 1) +(forward 6) +(up 6) +(forward 5) +(down 2) +(up 4) +(forward 2) +(down 9) +(forward 6) +(forward 3) +(forward 3) +(forward 4) +(forward 2) +(down 6) +(forward 9) +(forward 7) +(down 4) +(up 1) +(forward 4) +(down 6) +(down 6) +(up 1) +(up 1) +(forward 3) +(down 5) +(up 5) +(down 3) +(down 6) +(up 8) +(down 2) +(up 6) +(up 1) +(forward 8) +(up 6) +(down 8) +(forward 9) +(forward 4) +(forward 9) +(down 7) +(down 9) +(down 6) +(down 1) +(forward 9) +(forward 9) +(down 6) +(down 5) +(up 6) +(down 9) +(up 4) +(up 5) +(forward 8) +(down 4) +(down 5) +(forward 8) +(forward 7) +(down 2) +(forward 2) +(forward 6) +(forward 7) +(down 1) +(down 7) +(down 1) +(down 6) +(forward 2) +(up 2) +(down 4) +(down 8) +(forward 1) +(down 1) +(down 3) +(down 3) +(up 9) +(down 9) +(forward 3) +(up 4) +(forward 1) +(down 9) +(down 8) +(down 9) +(forward 5) +(forward 4) +(up 3) +(down 8) +(forward 2) +(down 3) +(up 5) +(forward 4) +(down 7) +(down 8) +(down 9) +(forward 8) +(down 8) +(forward 4) +(down 6) +(down 3) +(forward 5) +(down 3) +(down 9) +(down 4) +(up 8) +(forward 4) +(up 6) +(down 3) +(forward 6) +(down 9) +(down 7) +(forward 7) +(forward 3) +(forward 2) +(forward 4) +(down 4) +(down 5) +(up 9) +(down 2) +(down 6) +(down 9) +(forward 7) +(forward 3) +(up 3) +(forward 3) +(down 4) +(down 7) +(forward 2) +(down 2) +(forward 3) +(down 8) +(down 7) +(down 7) +(forward 2) +(forward 2) +(up 6) +(forward 8) +(forward 9) +(up 3) +(forward 8) +(forward 5) +(forward 7) +(up 3) +(forward 3) +(forward 6) +(down 5) +(down 5) +(down 4) +(forward 1) +(forward 8) +(forward 4) +(forward 3) +(down 1) +(forward 8) +(down 4) +(up 5) +(forward 4) +(down 2) +(forward 7) +(down 2) +(forward 9) +(down 1) +(forward 6) +(forward 8) +(forward 6) +(forward 7) +(forward 1) +(forward 6) +(down 5) +(up 3) +(forward 7) +(down 6) +(forward 2) +(down 2) +(forward 8) +(forward 9) +(up 7) +(forward 1) +(forward 1) +(up 1) +(forward 1) +(down 2) +(forward 6) +(down 9) +(up 1) +(up 2) +(forward 6) +(forward 1) +(forward 7) +(down 1) +(up 8) +(forward 7) +(up 6) +(up 4) +(down 1) +(forward 2) +(down 4) +(down 1) +(down 7) +(down 4) +(up 3) +(forward 8) +(forward 3) +(forward 5) +(down 7) +(down 8) +(forward 5) +(forward 2) +(down 5) +(down 2) +(forward 2) +(up 9) +(down 3) +(down 5) +(up 7) +(down 4) +(down 2) +(down 7) +(forward 6) +(down 2) +(forward 1) +(up 4) +(forward 2) +(forward 2) +(down 5) +(down 1) +(down 1) +(forward 7) +(forward 6) +(down 7) +(down 5) +(up 1) +(up 3) +(forward 3) +(forward 9) +(forward 4) +(down 1) +(down 5) +(forward 3) +(forward 7) +(down 8) +(forward 8) +(forward 2) +(forward 7) +(up 7) +(down 7) +(down 4) +(down 2) +(up 6) +(up 1) +(forward 8) +(up 8) +(up 6) +(down 8) +(forward 1) +(down 5) +(forward 3) +(down 3) +(down 3) +(forward 1) +(up 3) +(up 3) +(forward 8) +(forward 8) +(down 8) +(forward 6) +(forward 2) +(down 7) +(forward 8) +(down 7) +(up 5) +(forward 7) +(down 1) +(forward 9) +(up 6) +(down 2) +(up 2) +(up 5) +(forward 6) +(forward 9) +(forward 3) +(down 8) +(forward 8) +(down 2) +(up 5) +(down 9) +(forward 5) +(down 6) +(down 3) +(down 9) +(up 8) +(up 3) +(down 2) +(forward 7) +(forward 4) +(forward 4) +(forward 8) +(up 6) +(up 4) +(forward 9) +(down 6) +(down 8) +(up 3) +(up 5) +(forward 8) +(forward 7) +(forward 4) +(down 8) +(forward 1) +(forward 5) +(down 9) +(forward 8) +(up 6) +(down 6) +(down 8) +(down 2) +(forward 4) +(forward 9) +(forward 2) +(forward 7) +(down 3) +(forward 3) +(up 6) +(down 4) +(forward 2) +(up 4) +(down 4) +(forward 4) +(forward 3) +(forward 1) +(up 6) +(forward 1) +(down 1) +(forward 7) +(up 4) +(forward 3) +(down 4) +(up 6) +(up 2) +(up 8) +(down 1) +(down 6) +(down 6) +(down 1) +(down 7) +(forward 8) +(down 9) +(forward 5) +(up 2) +(up 7) +(up 5) +(down 6) +(up 1) +(up 6) +(forward 4) +(down 7) +(forward 5) +(forward 1) +(down 6) +(forward 2) +(down 2) +(forward 9) +(down 9) +(up 6) +(forward 1) +(up 7) +(down 7) +(forward 1) +(down 6) +(up 1) +(forward 2) +(forward 1) +(down 4) +(forward 9) +(forward 7) +(forward 5) +(down 1) +(forward 2) +(down 2) +(down 2) +(down 5) +(forward 1) +(up 8) +(forward 9) +(down 7) +(forward 9) +(down 2) +(up 5) +(down 9) +(down 8) +(down 5) +(forward 8) +(forward 4) +(down 4) +(down 6) +(forward 1) +(down 5) +(up 6) +(down 3) +(down 3) +(forward 9) +(down 9) +(forward 6) +(down 5) +(up 6) +(down 5) +(up 7) +(forward 9) +(down 2) +(down 4) +(down 8) +(forward 4) +(up 7) +(forward 9) +(forward 7) +(up 5) +(down 7) +(down 5) +(down 1) +(forward 5) +(forward 4) +(down 2) +(up 3) +(forward 1) +(up 4) +(up 9) +(down 4) +(forward 3) +(down 4) +(down 9) +(forward 4) +(up 2) +(up 3) +(forward 7) +(up 6) +(down 8) +(down 8) +(forward 6) +(forward 2) +(forward 3) +(forward 9) +(forward 7) +(down 6) +(down 7) +(down 4) +(down 2) +(forward 8) +(down 6) +(forward 6) +(forward 6) +(forward 9) +(down 8) +(down 1) +(up 5) +(down 1) +(forward 9) +(down 1) +(up 8) +(forward 8) +(down 3) +(forward 1) +(down 9) +(forward 6) +(forward 4) +(forward 8) +(down 2) +(up 8) +(down 2) +(up 8) +(down 9) +(down 4) +(up 7) +(forward 7) +(forward 5) +(down 5) +(down 4) +(up 8) +(forward 1) +(down 7) +(forward 1) +(up 9) +(forward 9) +(forward 7) +(forward 9) +(down 9) +(forward 4) +(down 7) +(forward 6) +(forward 6) +(up 3) +(forward 2) +(down 5) +(up 8) +(down 1) +(up 8) +(down 4) +(down 1) +(up 6) +(forward 4) +(forward 3) +(forward 6) +(down 3) +(forward 4) +(forward 4) +(forward 4) +(down 8) +(forward 3) +(up 8) +(up 8) +(down 8) +(forward 6) +(forward 8) +(up 5) +(forward 6) +(down 8) +(down 7) +(up 4) +(forward 6) +(forward 9) +(down 9) +(forward 4) +(up 2) +(forward 1) +(up 3) +(down 9) +(down 8) +(forward 8) +(forward 8) +(forward 7) +(down 6) +(down 1) +(up 6) +(up 6) +(forward 9) +(forward 7) +(forward 7) +(down 3) +(down 6) +(down 9) +(down 4) +(forward 7) +(forward 3) +(forward 3) +(down 7) +(up 5) +(down 3) +(forward 6) +(forward 3) +(forward 5) +(up 3) +(down 7) +(forward 2) +(up 7) +(forward 9) +(down 3) +(down 9) +(forward 8) +(forward 5) +(up 7) +(up 2) +(up 8) +(forward 6) +(down 8) +(forward 2) +(forward 4) +(up 2) +(forward 2) +(forward 8) +(forward 4) +(down 8) +(forward 5) +(down 4) +(down 7) +(forward 3) +(down 3) +(up 1) +(down 9) +(forward 9) +(down 2) +(down 1) +(forward 1) +(down 6) +(down 3) +(forward 5) +(down 3) +(down 8) +(up 7) +(down 1) +(up 9) +(down 4) +(forward 9) +(down 4) +(forward 3) +(forward 6) +(down 3) +(forward 3) +(down 2) +(down 7) +(down 1) +(up 4) +(down 9) +(down 1) +(down 3) +(down 4) +(down 8) +(down 7) +(forward 4) +(down 4) +(down 9) +(forward 2) +(forward 7) +(forward 2) +(down 6) +(up 8) +(forward 6) +(down 2) +(forward 6) +(up 8) +(forward 6) +(down 9) +(forward 2) +(forward 6) + +(put-line `x = @x, y = @y, aim = @aim, (* x y) = @(* x y)`) |