garnet/haskell/aoc.cabal
George Thomas 415055dcc2 Allow output types to vary for different parts of same day
For now this applies to Haskell only, and it may turn out to be tricky for the Rust implementation.

In practice, the limitation hasn't turned out to be important, and we could even go the other way and use `Integer` everywhere. This does however at least help with debugging, as well as just being conceptually right.

The `nil` and `(/\)` functions are intended to be overloaded to work for other list-like things in a later commit, and from there we will investigate using `OverloadedLists` and `RebindableSyntax` to recover standard list syntax, although there are probably limitations due to `(:)` being special.
2025-12-16 16:15:11 +00:00

71 lines
1.4 KiB
Plaintext

cabal-version: 3.0
name: aoc
version: 0.1.0.0
license-file: LICENSE
author: George Thomas
maintainer: georgefsthomas@gmail.com
executable aoc
main-is: Main.hs
hs-source-dirs: .
other-modules:
Pre
Puzzles.Day1
Puzzles.Day2
Puzzles.Day3
Puzzles.Day4
Puzzles.Day5
Puzzles.Day6
Puzzles.Day7
Puzzles.Day8
Puzzles.Day9
Puzzles.Day10
default-language: GHC2024
default-extensions:
BlockArguments
DuplicateRecordFields
ImpredicativeTypes
LexicalNegation
MultiWayIf
NamedFieldPuns
NegativeLiterals
NoFieldSelectors
NoImplicitPrelude
NoMonomorphismRestriction
OverloadedRecordDot
OverloadedStrings
RecordWildCards
ViewPatterns
ghc-options:
-Wall
-fdefer-type-errors
build-depends:
base >= 4.14,
async,
binary,
bytestring,
colour,
containers,
deepseq,
directory,
disjoint-containers,
exceptions,
extra,
filepath,
lens,
linear,
massiv,
megaparsec,
monad-loops,
mtl,
pretty-simple,
safe,
stm,
streams,
tasty-golden,
tasty-hunit,
tasty,
text,
time,
transformers,