From a4c197dea1a0192b93e205daf8738f99a4f039b2 Mon Sep 17 00:00:00 2001 From: Scott Lawrence Date: Wed, 26 Jun 2024 21:16:21 -0700 Subject: Possibly shifting to a single script --- agate | 2 -- agate.ml | 19 +++++++++++++++++++ bin/main.ml | 18 +++++++++++++++--- 3 files changed, 34 insertions(+), 5 deletions(-) delete mode 100755 agate create mode 100755 agate.ml diff --git a/agate b/agate deleted file mode 100755 index 6b4eeee..0000000 --- a/agate +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec dune exec agate -- $* diff --git a/agate.ml b/agate.ml new file mode 100755 index 0000000..0e44939 --- /dev/null +++ b/agate.ml @@ -0,0 +1,19 @@ +#!/usr/bin/env ocaml + +type interpreter = { + mutable stack : int list +} + +type token = Word of string + +let tokenize line : token list = + String.split_on_char ' ' line |> List.map (fun s -> Word s) + +let parse line = + let _tokens = tokenize line in + () + +let () = + let line = input_line stdin |> parse in + print_string "HI" |> print_newline + diff --git a/bin/main.ml b/bin/main.ml index 2472a93..bb0d6ac 100644 --- a/bin/main.ml +++ b/bin/main.ml @@ -1,5 +1,17 @@ -open Angstrom +type interpreter = { + stack : int list +} -let parse (str:string) : unit = num str +type token = Word of string + +let tokenize line : token list = + String.split_on_char ' ' line |> List.map (fun s -> Word s) + +let parse line = + let _tokens = tokenize line in + () + +let () = + let line = input_line stdin |> parse in + print_string "HI" |> print_newline -let () = parse "" -- cgit v1.2.3-54-g00ecf