aboutsummaryrefslogtreecommitdiff
path: root/main.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'main.lisp')
-rw-r--r--main.lisp49
1 files changed, 0 insertions, 49 deletions
diff --git a/main.lisp b/main.lisp
deleted file mode 100644
index 5c324af..0000000
--- a/main.lisp
+++ /dev/null
@@ -1,49 +0,0 @@
-;;; main.lisp - 2025-02-09
-
-;; Copyright (C) 2025 Aryadev Chavali
-
-;; This program is distributed in the hope that it will be useful, but WITHOUT
-;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-;; FOR A PARTICULAR PURPOSE. See the GNU General Public License Version 2 for
-;; details.
-
-;; You may distribute and modify this code under the terms of the GNU General
-;; Public License Version 2, which you should have received a copy of along with
-;; this program. If not, please go to <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;; Implementation of `main' package. Defines the entrypoint of the program,
-;; handling any input from the user and passing it into the system.
-
-;;; Code:
-
-(in-package :main)
-
-(fn read-input (&optional (prompt "> ")) (-> (&optional string) string)
- (format t "~a" prompt)
- (force-output)
- (read-line))
-
-(fn parse-integers (input) (-> (string) list)
- (->> input
- uiop:split-string
- (mapcar #'parse-integer*)
- (remove-if #'null)))
-
-(fn read-integers () (-> nil list)
- (->> (read-input "Enter numbers: ")
- parse-integers))
-
-(fn read-until-integers () (-> nil list)
- (let ((inp (read-integers)))
- (while (null inp)
- (format t "Need at least one integer...~%")
- (force-output)
- (setq inp (read-integers)))
- inp))
-
-(defun start ()
- (--> (read-until-integers)
- (cons '+ _)
- (format t "~a = ~a~%" _ (eval _))))