aboutsummaryrefslogtreecommitdiff
path: root/advent-of-code/2023/lib/utils.rkt
diff options
context:
space:
mode:
Diffstat (limited to 'advent-of-code/2023/lib/utils.rkt')
-rw-r--r--advent-of-code/2023/lib/utils.rkt17
1 files changed, 17 insertions, 0 deletions
diff --git a/advent-of-code/2023/lib/utils.rkt b/advent-of-code/2023/lib/utils.rkt
new file mode 100644
index 0000000..946bb86
--- /dev/null
+++ b/advent-of-code/2023/lib/utils.rkt
@@ -0,0 +1,17 @@
+#lang racket
+
+(provide get-lines
+ enumerate)
+
+(define (get-lines fp)
+ (let loop ((lines '()))
+ (define l (read-line fp))
+ (if (eof-object? l)
+ (reverse lines)
+ (loop (cons l lines)))))
+
+(define (enumerate lst)
+ (let loop ((i 1) (ret '()) (remain lst))
+ (if (null? remain)
+ (reverse ret)
+ (loop (+ 1 i) (cons (list (car remain) i) ret) (cdr remain))))) \ No newline at end of file