commit 29d83876568b4a3d46608b2aa389dd6353c0eaf6 Author: Rhiannon Morris Date: Wed Dec 2 09:26:55 2020 +0100 first diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..655e32b --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +_build +.merlin diff --git a/aoc2020.ml b/aoc2020.ml new file mode 100644 index 0000000..8c6e290 --- /dev/null +++ b/aoc2020.ml @@ -0,0 +1,6 @@ +let days = [|Day1.main|] + +let _ = + match Array.to_list Sys.argv with + | _exename :: day :: args -> days.(int_of_string day - 1) args + | _ -> Usage.exit "[day_num] args..." diff --git a/day1.ml b/day1.ml new file mode 100644 index 0000000..92b3c3c --- /dev/null +++ b/day1.ml @@ -0,0 +1,6 @@ +let main2 _input = + print_endline "boop" + +let main = function + | [input] -> main2 input + | _ -> failwith "usage: $0 1 infile" diff --git a/dune b/dune new file mode 100644 index 0000000..5817863 --- /dev/null +++ b/dune @@ -0,0 +1,2 @@ +(executable + (name aoc2020)) diff --git a/dune-project b/dune-project new file mode 100644 index 0000000..45acd3f --- /dev/null +++ b/dune-project @@ -0,0 +1 @@ +(lang dune 2.7) diff --git a/usage.ml b/usage.ml new file mode 100644 index 0000000..572b8e6 --- /dev/null +++ b/usage.ml @@ -0,0 +1,4 @@ +let exit args = + let err = Format.sprintf "usage: %s %s" Sys.argv.(0) args in + print_endline err; + exit 1