/trolley-scheduler

๐Ÿ“šHaskell program to schedule trolleys and shifts randomly!

Primary LanguageHaskellMIT LicenseMIT

trolley-scheduler

๐Ÿ“šHaskell program to schedule trolleys and shifts randomly!

Usage

host$ nix-shell --pure shell.nix
nix$ cabal repl
*Lib> Main.main

testing:

nix$ cabal repl test-trolley
...
*Lib> Test.main

with ghcid:

nix$ ghcid -c 'cabal repl test-trolley' --test 'Test.main'

adding deps:

  • add to cabal file, then run:
host$ nix-shell --pure -p cabal2nix --run "cabal2nix ." > default.nix

TODO:

  • Generate a PDF? ๐Ÿ“Š
  • Read data from CSV files. ๐Ÿ“–
  • Allow 3~4 people per shift! ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ
  • Improve printing of output. ๐Ÿ–จ
  • Fill turns respecting availability. ๐Ÿ“†
  • Each shift must have a Captain. ๐Ÿ‘จ๐Ÿผโ€โœˆ๏ธ
  • Pioneers have more turns / preference. ๐Ÿค“
  • Add long distance / has vehicle constraint. ๐Ÿš—
  • Deduce month length prompting from terminal. ๐Ÿ—“