# Seqlings Exercise Definitions
#
# Each exercise has:
#   name = unique identifier
#   path = path to the .seq file
#   mode = "compile" (just needs to compile) or "test" (needs to pass test.assert checks)

# ============================================================
# 00-intro: Introduction to Seq
# ============================================================

[[exercises]]
name = "01-hello"
path = "exercises/00-intro/01-hello.seq"
mode = "compile"

[[exercises]]
name = "02-comments"
path = "exercises/00-intro/02-comments.seq"
mode = "compile"

[[exercises]]
name = "03-numbers"
path = "exercises/00-intro/03-numbers.seq"
mode = "test"

# ============================================================
# 01-stack-basics: Stack Manipulation
# ============================================================

[[exercises]]
name = "01-push"
path = "exercises/01-stack-basics/01-push.seq"
mode = "test"

[[exercises]]
name = "02-dup"
path = "exercises/01-stack-basics/02-dup.seq"
mode = "test"

[[exercises]]
name = "03-drop"
path = "exercises/01-stack-basics/03-drop.seq"
mode = "test"

[[exercises]]
name = "04-swap"
path = "exercises/01-stack-basics/04-swap.seq"
mode = "test"

[[exercises]]
name = "05-over"
path = "exercises/01-stack-basics/05-over.seq"
mode = "test"

[[exercises]]
name = "06-rot"
path = "exercises/01-stack-basics/06-rot.seq"
mode = "test"

# ============================================================
# 02-stack-advanced: Advanced Stack Operations
# ============================================================

[[exercises]]
name = "01-nip"
path = "exercises/02-stack-advanced/01-nip.seq"
mode = "test"

[[exercises]]
name = "02-tuck"
path = "exercises/02-stack-advanced/02-tuck.seq"
mode = "test"

[[exercises]]
name = "03-2dup"
path = "exercises/02-stack-advanced/03-2dup.seq"
mode = "test"

[[exercises]]
name = "04-3drop"
path = "exercises/02-stack-advanced/04-3drop.seq"
mode = "test"

[[exercises]]
name = "05-pick"
path = "exercises/02-stack-advanced/05-pick.seq"
mode = "test"

[[exercises]]
name = "06-roll"
path = "exercises/02-stack-advanced/06-roll.seq"
mode = "test"

# ============================================================
# 03-arithmetic: Integer Arithmetic
# ============================================================

[[exercises]]
name = "01-add"
path = "exercises/03-arithmetic/01-add.seq"
mode = "test"

[[exercises]]
name = "02-subtract"
path = "exercises/03-arithmetic/02-subtract.seq"
mode = "test"

[[exercises]]
name = "03-multiply"
path = "exercises/03-arithmetic/03-multiply.seq"
mode = "test"

[[exercises]]
name = "04-divide"
path = "exercises/03-arithmetic/04-divide.seq"
mode = "test"

[[exercises]]
name = "05-combine"
path = "exercises/03-arithmetic/05-combine.seq"
mode = "test"

[[exercises]]
name = "06-expressions"
path = "exercises/03-arithmetic/06-expressions.seq"
mode = "test"

# ============================================================
# 04-floats: Floating-Point Numbers
# ============================================================

[[exercises]]
name = "01-float-literals"
path = "exercises/04-floats/01-float-literals.seq"
mode = "test"

[[exercises]]
name = "02-f-add"
path = "exercises/04-floats/02-f-add.seq"
mode = "test"

[[exercises]]
name = "03-f-multiply"
path = "exercises/04-floats/03-f-multiply.seq"
mode = "test"

[[exercises]]
name = "04-f-compare"
path = "exercises/04-floats/04-f-compare.seq"
mode = "test"

[[exercises]]
name = "05-mixed"
path = "exercises/04-floats/05-mixed.seq"
mode = "test"

# ============================================================
# 05-comparison: Comparison Operators
# ============================================================

[[exercises]]
name = "01-equals"
path = "exercises/05-comparison/01-equals.seq"
mode = "test"

[[exercises]]
name = "02-less-greater"
path = "exercises/05-comparison/02-less-greater.seq"
mode = "test"

[[exercises]]
name = "03-not-equal"
path = "exercises/05-comparison/03-not-equal.seq"
mode = "test"

[[exercises]]
name = "04-less-equal"
path = "exercises/05-comparison/04-less-equal.seq"
mode = "test"

[[exercises]]
name = "05-chaining"
path = "exercises/05-comparison/05-chaining.seq"
mode = "test"

# ============================================================
# 06-boolean: Boolean Logic
# ============================================================

[[exercises]]
name = "01-and"
path = "exercises/06-boolean/01-and.seq"
mode = "test"

[[exercises]]
name = "02-or"
path = "exercises/06-boolean/02-or.seq"
mode = "test"

[[exercises]]
name = "03-not"
path = "exercises/06-boolean/03-not.seq"
mode = "test"

[[exercises]]
name = "04-combine"
path = "exercises/06-boolean/04-combine.seq"
mode = "test"

# ============================================================
# 07-conditionals: Control Flow
# ============================================================

[[exercises]]
name = "01-if"
path = "exercises/07-conditionals/01-if.seq"
mode = "test"

[[exercises]]
name = "02-when"
path = "exercises/07-conditionals/02-when.seq"
mode = "test"

[[exercises]]
name = "03-nested"
path = "exercises/07-conditionals/03-nested.seq"
mode = "test"

[[exercises]]
name = "04-fizzbuzz"
path = "exercises/07-conditionals/04-fizzbuzz.seq"
mode = "test"

# ============================================================
# 08-words: Defining Words (Functions)
# ============================================================

[[exercises]]
name = "01-define"
path = "exercises/08-words/01-define.seq"
mode = "test"

[[exercises]]
name = "02-stack-effects"
path = "exercises/08-words/02-stack-effects.seq"
mode = "test"

[[exercises]]
name = "03-calling"
path = "exercises/08-words/03-calling.seq"
mode = "test"

[[exercises]]
name = "04-refactor"
path = "exercises/08-words/04-refactor.seq"
mode = "test"

[[exercises]]
name = "05-helper-words"
path = "exercises/08-words/05-helper-words.seq"
mode = "test"

[[exercises]]
name = "06-documentation"
path = "exercises/08-words/06-documentation.seq"
mode = "test"

# ============================================================
# 09-recursion: Recursive Functions
# ============================================================

[[exercises]]
name = "01-countdown"
path = "exercises/09-recursion/01-countdown.seq"
mode = "test"

[[exercises]]
name = "02-factorial"
path = "exercises/09-recursion/02-factorial.seq"
mode = "test"

[[exercises]]
name = "03-fibonacci"
path = "exercises/09-recursion/03-fibonacci.seq"
mode = "test"

[[exercises]]
name = "04-accumulator"
path = "exercises/09-recursion/04-accumulator.seq"
mode = "test"

[[exercises]]
name = "05-mutual"
path = "exercises/09-recursion/05-mutual.seq"
mode = "test"

[[exercises]]
name = "06-tco"
path = "exercises/09-recursion/06-tco.seq"
mode = "test"

# ============================================================
# 10-quotations: Higher-Order Programming
# ============================================================

[[exercises]]
name = "01-basics"
path = "exercises/10-quotations/01-basics.seq"
mode = "test"

[[exercises]]
name = "02-call"
path = "exercises/10-quotations/02-call.seq"
mode = "test"

[[exercises]]
name = "03-higher-order"
path = "exercises/10-quotations/03-higher-order.seq"
mode = "test"

# ============================================================
# 11-types: Types in Seq
# ============================================================

[[exercises]]
name = "01-type-predicates"
path = "exercises/11-types/01-predicates.seq"
mode = "test"

[[exercises]]
name = "02-int-ops"
path = "exercises/11-types/02-int-ops.seq"
mode = "test"

[[exercises]]
name = "03-float-ops"
path = "exercises/11-types/03-float-ops.seq"
mode = "test"

[[exercises]]
name = "04-string-type"
path = "exercises/11-types/04-string-type.seq"
mode = "test"

[[exercises]]
name = "05-list-type"
path = "exercises/11-types/05-list-type.seq"
mode = "test"

[[exercises]]
name = "06-row-polymorphism"
path = "exercises/11-types/06-row-polymorphism.seq"
mode = "test"

# ============================================================
# 12-type-conversions: Type Conversions
# ============================================================

[[exercises]]
name = "01-int-to-string"
path = "exercises/12-type-conversions/01-int-to-string.seq"
mode = "test"

[[exercises]]
name = "02-string-to-int"
path = "exercises/12-type-conversions/02-string-to-int.seq"
mode = "test"

[[exercises]]
name = "03-int-float"
path = "exercises/12-type-conversions/03-int-float.seq"
mode = "test"

[[exercises]]
name = "04-float-string"
path = "exercises/12-type-conversions/04-float-string.seq"
mode = "test"

[[exercises]]
name = "05-conversions-combine"
path = "exercises/12-type-conversions/05-combine.seq"
mode = "test"

# ============================================================
# 13-strings: String Operations
# ============================================================

[[exercises]]
name = "01-concat"
path = "exercises/13-strings/01-concat.seq"
mode = "test"

[[exercises]]
name = "02-str-length"
path = "exercises/13-strings/02-length.seq"
mode = "test"

[[exercises]]
name = "03-char-at"
path = "exercises/13-strings/03-char-at.seq"
mode = "test"

[[exercises]]
name = "04-substring"
path = "exercises/13-strings/04-substring.seq"
mode = "test"

[[exercises]]
name = "05-find-contains"
path = "exercises/13-strings/05-find-contains.seq"
mode = "test"

[[exercises]]
name = "06-split"
path = "exercises/13-strings/06-split.seq"
mode = "test"

[[exercises]]
name = "07-transform"
path = "exercises/13-strings/07-transform.seq"
mode = "test"

[[exercises]]
name = "08-compare"
path = "exercises/13-strings/08-compare.seq"
mode = "test"

# ============================================================
# 14-variants: Variants (Union Types)
# ============================================================

[[exercises]]
name = "01-variant-basics"
path = "exercises/14-variants/01-basics.seq"
mode = "test"

[[exercises]]
name = "02-variant-option"
path = "exercises/14-variants/02-option.seq"
mode = "test"

[[exercises]]
name = "03-variant-result"
path = "exercises/14-variants/03-result.seq"
mode = "test"

[[exercises]]
name = "04-variant-match"
path = "exercises/14-variants/04-match.seq"
mode = "test"

[[exercises]]
name = "05-variant-combine"
path = "exercises/14-variants/05-combine.seq"
mode = "test"

# ============================================================
# 15-lists: Lists and Higher-Order Operations
# ============================================================

[[exercises]]
name = "01-list-basics"
path = "exercises/15-lists/01-basics.seq"
mode = "test"

[[exercises]]
name = "02-map"
path = "exercises/15-lists/02-map.seq"
mode = "test"

[[exercises]]
name = "03-filter"
path = "exercises/15-lists/03-filter.seq"
mode = "test"

[[exercises]]
name = "04-fold"
path = "exercises/15-lists/04-fold.seq"
mode = "test"

[[exercises]]
name = "05-list-combine"
path = "exercises/15-lists/05-combine.seq"
mode = "test"

# ============================================================
# 16-maps: Maps (Dictionaries)
# ============================================================

[[exercises]]
name = "01-map-basics"
path = "exercises/16-maps/01-basics.seq"
mode = "test"

[[exercises]]
name = "02-map-get"
path = "exercises/16-maps/02-get.seq"
mode = "test"

[[exercises]]
name = "03-map-get-safe"
path = "exercises/16-maps/03-get-safe.seq"
mode = "test"

[[exercises]]
name = "04-map-remove"
path = "exercises/16-maps/04-remove.seq"
mode = "test"

[[exercises]]
name = "05-map-inspection"
path = "exercises/16-maps/05-inspection.seq"
mode = "test"

[[exercises]]
name = "06-map-combine"
path = "exercises/16-maps/06-combine.seq"
mode = "test"

# ============================================================
# 18-bitwise: Bitwise Operations
# ============================================================

[[exercises]]
name = "01-and-or"
path = "exercises/18-bitwise/01-and-or.seq"
mode = "test"

[[exercises]]
name = "02-xor"
path = "exercises/18-bitwise/02-xor.seq"
mode = "test"

[[exercises]]
name = "03-not"
path = "exercises/18-bitwise/03-not.seq"
mode = "test"

[[exercises]]
name = "04-shifts"
path = "exercises/18-bitwise/04-shifts.seq"
mode = "test"

[[exercises]]
name = "05-bit-flags"
path = "exercises/18-bitwise/05-bit-flags.seq"
mode = "test"

# ============================================================
# 19-io: Input/Output
# ============================================================

[[exercises]]
name = "01-write-line"
path = "exercises/19-io/01-write-line.seq"
mode = "test"

[[exercises]]
name = "02-read-line"
path = "exercises/19-io/02-read-line.seq"
mode = "test"

[[exercises]]
name = "03-read-status"
path = "exercises/19-io/03-read-status.seq"
mode = "test"

[[exercises]]
name = "04-read-n"
path = "exercises/19-io/04-read-n.seq"
mode = "test"

[[exercises]]
name = "05-io-interactive"
path = "exercises/19-io/05-interactive.seq"
mode = "test"

# ============================================================
# 20-files: File Operations
# ============================================================

[[exercises]]
name = "01-file-read"
path = "exercises/20-files/01-read.seq"
mode = "test"

[[exercises]]
name = "02-file-write"
path = "exercises/20-files/02-write.seq"
mode = "test"

[[exercises]]
name = "03-file-exists"
path = "exercises/20-files/03-exists.seq"
mode = "test"

[[exercises]]
name = "04-file-lines"
path = "exercises/20-files/04-lines.seq"
mode = "test"

[[exercises]]
name = "05-file-combine"
path = "exercises/20-files/05-combine.seq"
mode = "test"

# ============================================================
# 21-args: Command Line Arguments
# ============================================================

[[exercises]]
name = "01-args-basics"
path = "exercises/21-args/01-basics.seq"
mode = "test"

[[exercises]]
name = "02-args-at"
path = "exercises/21-args/02-at.seq"
mode = "test"

[[exercises]]
name = "03-args-safe"
path = "exercises/21-args/03-safe-access.seq"
mode = "test"

[[exercises]]
name = "04-args-combine"
path = "exercises/21-args/04-combine.seq"
mode = "test"

# ============================================================
# 22-os: Operating System Operations
# ============================================================

[[exercises]]
name = "01-os-env-get"
path = "exercises/22-os/01-env-get.seq"
mode = "test"

[[exercises]]
name = "02-os-env-set"
path = "exercises/22-os/02-env-set.seq"
mode = "test"

[[exercises]]
name = "03-os-cwd"
path = "exercises/22-os/03-cwd.seq"
mode = "test"

[[exercises]]
name = "04-os-combine"
path = "exercises/22-os/04-combine.seq"
mode = "test"

# ============================================================
# 23-time: Time Operations
# ============================================================

[[exercises]]
name = "01-time-now"
path = "exercises/23-time/01-now.seq"
mode = "test"

[[exercises]]
name = "02-time-sleep"
path = "exercises/23-time/02-sleep.seq"
mode = "test"

[[exercises]]
name = "03-time-measure"
path = "exercises/23-time/03-measure.seq"
mode = "test"

[[exercises]]
name = "04-time-combine"
path = "exercises/23-time/04-combine.seq"
mode = "test"

# ============================================================
# 24-channels: Concurrency with Channels
# ============================================================

[[exercises]]
name = "01-chan-create"
path = "exercises/24-channels/01-create.seq"
mode = "test"

[[exercises]]
name = "02-send-receive"
path = "exercises/24-channels/02-send-receive.seq"
mode = "test"

[[exercises]]
name = "03-safe-ops"
path = "exercises/24-channels/03-safe-ops.seq"
mode = "test"

[[exercises]]
name = "04-close"
path = "exercises/24-channels/04-close.seq"
mode = "test"

[[exercises]]
name = "05-yield"
path = "exercises/24-channels/05-yield.seq"
mode = "test"

[[exercises]]
name = "06-patterns"
path = "exercises/24-channels/06-patterns.seq"
mode = "test"

# ============================================================
# 25-spawn: Spawning Strands
# ============================================================

[[exercises]]
name = "01-spawn-basics"
path = "exercises/25-spawn/01-basics.seq"
mode = "test"

[[exercises]]
name = "02-return-value"
path = "exercises/25-spawn/02-return-value.seq"
mode = "test"

[[exercises]]
name = "03-strand-communication"
path = "exercises/25-spawn/03-communication.seq"
mode = "test"

[[exercises]]
name = "04-ping-pong"
path = "exercises/25-spawn/04-ping-pong.seq"
mode = "test"

[[exercises]]
name = "05-worker-pool"
path = "exercises/25-spawn/05-worker-pool.seq"
mode = "test"

# ============================================================
# 26-tcp: TCP Networking
# ============================================================

[[exercises]]
name = "01-tcp-listen"
path = "exercises/26-tcp/01-listen.seq"
mode = "test"

[[exercises]]
name = "02-tcp-accept"
path = "exercises/26-tcp/02-accept.seq"
mode = "test"

[[exercises]]
name = "03-tcp-read-write"
path = "exercises/26-tcp/03-read-write.seq"
mode = "test"

[[exercises]]
name = "04-tcp-close"
path = "exercises/26-tcp/04-close.seq"
mode = "test"

[[exercises]]
name = "05-tcp-echo"
path = "exercises/26-tcp/05-echo.seq"
mode = "test"

# ============================================================
# 27-std-imath: Standard Library - Integer Math
# ============================================================

[[exercises]]
name = "01-imath-abs"
path = "exercises/27-std-imath/01-abs.seq"
mode = "test"

[[exercises]]
name = "02-imath-min-max"
path = "exercises/27-std-imath/02-min-max.seq"
mode = "test"

[[exercises]]
name = "03-imath-clamp"
path = "exercises/27-std-imath/03-clamp.seq"
mode = "test"

[[exercises]]
name = "04-imath-gcd"
path = "exercises/27-std-imath/04-gcd.seq"
mode = "test"

[[exercises]]
name = "05-imath-power"
path = "exercises/27-std-imath/05-power.seq"
mode = "test"

[[exercises]]
name = "06-imath-combine"
path = "exercises/27-std-imath/06-combine.seq"
mode = "test"

# ============================================================
# 28-std-fmath: Standard Library - Floating-Point Math
# ============================================================

[[exercises]]
name = "01-fmath-sqrt"
path = "exercises/28-std-fmath/01-sqrt.seq"
mode = "test"

[[exercises]]
name = "02-fmath-trig"
path = "exercises/28-std-fmath/02-trig.seq"
mode = "test"

[[exercises]]
name = "03-fmath-exp-log"
path = "exercises/28-std-fmath/03-exp-log.seq"
mode = "test"

[[exercises]]
name = "04-fmath-round"
path = "exercises/28-std-fmath/04-round.seq"
mode = "test"

[[exercises]]
name = "05-fmath-combine"
path = "exercises/28-std-fmath/05-combine.seq"
mode = "test"

# ============================================================
# 29-weave: Generators from Strands
# ============================================================

[[exercises]]
name = "01-weave-basics"
path = "exercises/29-weave/01-basics.seq"
mode = "test"

[[exercises]]
name = "02-multiple-yields"
path = "exercises/29-weave/02-multiple-yields.seq"
mode = "test"

[[exercises]]
name = "03-accumulator"
path = "exercises/29-weave/03-accumulator.seq"
mode = "test"

[[exercises]]
name = "04-cancellation"
path = "exercises/29-weave/04-cancellation.seq"
mode = "test"

# ============================================================
# 30-encoding: Base64, Hex Encoding
# ============================================================

[[exercises]]
name = "01-base64"
path = "exercises/30-encoding/01-base64.seq"
mode = "test"

[[exercises]]
name = "02-base64url"
path = "exercises/30-encoding/02-base64url.seq"
mode = "test"

[[exercises]]
name = "03-hex"
path = "exercises/30-encoding/03-hex.seq"
mode = "test"

[[exercises]]
name = "04-roundtrip"
path = "exercises/30-encoding/04-roundtrip.seq"
mode = "test"

[[exercises]]
name = "05-errors"
path = "exercises/30-encoding/05-errors.seq"
mode = "test"

# ============================================================
# 31-regex: Regular Expressions
# ============================================================

[[exercises]]
name = "01-match"
path = "exercises/31-regex/01-match.seq"
mode = "test"

[[exercises]]
name = "02-find"
path = "exercises/31-regex/02-find.seq"
mode = "test"

[[exercises]]
name = "03-replace"
path = "exercises/31-regex/03-replace.seq"
mode = "test"

[[exercises]]
name = "04-captures"
path = "exercises/31-regex/04-captures.seq"
mode = "test"

[[exercises]]
name = "05-split"
path = "exercises/31-regex/05-split.seq"
mode = "test"

[[exercises]]
name = "06-validate"
path = "exercises/31-regex/06-validate.seq"
mode = "test"

# ============================================================
# 32-compression: Gzip and Zstd
# ============================================================

[[exercises]]
name = "01-gzip"
path = "exercises/32-compression/01-gzip.seq"
mode = "test"

[[exercises]]
name = "02-zstd"
path = "exercises/32-compression/02-zstd.seq"
mode = "test"

[[exercises]]
name = "03-levels"
path = "exercises/32-compression/03-levels.seq"
mode = "test"

[[exercises]]
name = "04-roundtrip"
path = "exercises/32-compression/04-roundtrip.seq"
mode = "test"

# ============================================================
# 33-crypto: Cryptography
# ============================================================

[[exercises]]
name = "01-sha256"
path = "exercises/33-crypto/01-sha256.seq"
mode = "test"

[[exercises]]
name = "02-hmac"
path = "exercises/33-crypto/02-hmac.seq"
mode = "test"

[[exercises]]
name = "03-random"
path = "exercises/33-crypto/03-random.seq"
mode = "test"

[[exercises]]
name = "04-encrypt"
path = "exercises/33-crypto/04-encrypt.seq"
mode = "test"

[[exercises]]
name = "05-pbkdf2"
path = "exercises/33-crypto/05-pbkdf2.seq"
mode = "test"

[[exercises]]
name = "06-signatures"
path = "exercises/33-crypto/06-signatures.seq"
mode = "test"

# ============================================================
# 34-http-client: HTTP Client
# ============================================================

[[exercises]]
name = "01-get"
path = "exercises/34-http-client/01-get.seq"
mode = "test"

[[exercises]]
name = "02-post"
path = "exercises/34-http-client/02-post.seq"
mode = "test"

[[exercises]]
name = "03-errors"
path = "exercises/34-http-client/03-errors.seq"
mode = "test"

[[exercises]]
name = "04-json"
path = "exercises/34-http-client/04-json.seq"
mode = "test"

# ============================================================
# 35-littles-law: Little's Law (L = λW)
# ============================================================

[[exercises]]
name = "01-measure-latency"
path = "exercises/35-littles-law/01-measure-latency.seq"
mode = "test"

[[exercises]]
name = "02-throughput"
path = "exercises/35-littles-law/02-throughput.seq"
mode = "test"

[[exercises]]
name = "03-queue-depth"
path = "exercises/35-littles-law/03-queue-depth.seq"
mode = "test"

[[exercises]]
name = "04-verify-law"
path = "exercises/35-littles-law/04-verify-law.seq"
mode = "test"

[[exercises]]
name = "05-capacity-planning"
path = "exercises/35-littles-law/05-capacity-planning.seq"
mode = "test"

# ============================================================
# 36-amdahls-law: Amdahl's Law (Speedup = 1/((1-p) + p/n))
# ============================================================

[[exercises]]
name = "01-serial-baseline"
path = "exercises/36-amdahls-law/01-serial-baseline.seq"
mode = "test"

[[exercises]]
name = "02-parallel-speedup"
path = "exercises/36-amdahls-law/02-parallel-speedup.seq"
mode = "test"

[[exercises]]
name = "03-serial-fraction"
path = "exercises/36-amdahls-law/03-serial-fraction.seq"
mode = "test"

[[exercises]]
name = "04-calculate-speedup"
path = "exercises/36-amdahls-law/04-calculate-speedup.seq"
mode = "test"

[[exercises]]
name = "05-diminishing-returns"
path = "exercises/36-amdahls-law/05-diminishing-returns.seq"
mode = "test"

# ============================================================
# 37-combinators: Dataflow Combinators (dip, keep, bi)
# ============================================================

[[exercises]]
name = "01-dip"
path = "exercises/37-combinators/01-dip.seq"
mode = "test"

[[exercises]]
name = "02-keep"
path = "exercises/37-combinators/02-keep.seq"
mode = "test"

[[exercises]]
name = "03-bi"
path = "exercises/37-combinators/03-bi.seq"
mode = "test"

[[exercises]]
name = "04-dip-deeper"
path = "exercises/37-combinators/04-dip-deeper.seq"
mode = "test"

[[exercises]]
name = "05-keep-chain"
path = "exercises/37-combinators/05-keep-chain.seq"
mode = "test"

[[exercises]]
name = "06-combinator-combine"
path = "exercises/37-combinators/06-combine.seq"
mode = "test"

# ============================================================
# 38-cons-list: Building an ADT
# ============================================================

[[exercises]]
name = "01-cons-constructors"
path = "exercises/38-cons-list/01-constructors.seq"
mode = "test"

[[exercises]]
name = "02-cons-predicates"
path = "exercises/38-cons-list/02-predicates.seq"
mode = "test"

[[exercises]]
name = "03-cons-accessors"
path = "exercises/38-cons-list/03-accessors.seq"
mode = "test"

[[exercises]]
name = "04-cons-length"
path = "exercises/38-cons-list/04-length.seq"
mode = "test"

[[exercises]]
name = "05-cons-reverse"
path = "exercises/38-cons-list/05-reverse.seq"
mode = "test"

[[exercises]]
name = "06-cons-append"
path = "exercises/38-cons-list/06-append.seq"
mode = "test"
