Rough structure of the program
ca-store is planned to work as follows: 1) A monad (currently IO) will generate the configuration, read the command line, parse the config files, and create the environment the program should run in. 2) This environment will be passed to the main monad (currently Program) to do the work. Currently everything will be directly coded with little to no abstraction. Once ca-store is up and running, we will begin regaining purity by pulling major features into small testable units.
This commit is contained in:
parent
7f2d095d2c
commit
c504f85a2d
13 changed files with 434 additions and 0 deletions
15
.gitignore
vendored
Normal file
15
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
*
|
||||
!*/
|
||||
!.gitignore
|
||||
!flake.nix
|
||||
!flake.lock
|
||||
!package.yaml
|
||||
!app/Main.hs
|
||||
!src/CAStore/Command.hs
|
||||
!src/CAStore/Config.hs
|
||||
!src/CAStore/Config/Type.hs
|
||||
!src/CAStore/Config/CLI.hs
|
||||
!src/CAStore/Program.hs
|
||||
!src/CAStore/Program/Storage.hs
|
||||
!src/CAStore/Type.hs
|
||||
!src/Data/List/Extra.hs
|
||||
Loading…
Add table
Add a link
Reference in a new issue