-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathimpli.cabal
More file actions
153 lines (137 loc) · 3.02 KB
/
impli.cabal
File metadata and controls
153 lines (137 loc) · 3.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
cabal-version: 3.12
name: impli
version: 5.0.0.0
build-type: Simple
license: MIT
license-file: LICENSE.md
author: Basil Feitknecht
maintainer: bfeitknecht@ethz.ch
homepage: https://github.com/bfeitknecht/impli
bug-reports: https://github.com/bfeitknecht/impli/issues
category: Language
synopsis: Interpreter for an imperative toy language
description:
Minimal imperative language interpreter built for educational purposes.
extra-doc-files:
CHANGELOG.md
README.md
docs/IMP.ebnf
extra-source-files:
docs/IMP.ebnf
docs/examples/*.imp
docs/man/impli.1
docs/paper/IMP.pdf
source-repository head
type: git
location: https://github.com/bfeitknecht/impli.git
common dependencies
default-language: Haskell2010
ghc-options:
-Wall
-Wextra
build-depends:
async >=2.2 && <2.3,
base >=4.14 && <5,
containers >=0.6 && <0.9,
mtl >=2.2 && <3,
parsec >=3.1 && <3.2,
prettyprinter >=1.7 && <2,
random >=1.1 && <1.3,
transformers >=0.5 && <0.7,
common shared
-- cabal-gild: discover src --include=src/IMP/**
other-modules:
IMP.Config
IMP.Exception
IMP.Expression
IMP.Lexer
IMP.Parser
IMP.Pretty
IMP.Semantics.Natural
IMP.Semantics.Structural
IMP.State
IMP.Statement
IMP.Syntax
common native
build-depends:
ansi-terminal >=0.11 && <1.1,
haskeline >=0.8 && <0.9,
impli,
optparse-applicative >=0.15 && <0.19,
-- cabal-gild: discover src --include=src/REPL/** --include=src/CLI.hs --exclude=src/REPL/Execute/Browser.hs
other-modules:
CLI
REPL.Execute.Native
REPL.Meta
REPL.Preset
REPL.State
autogen-modules:
Paths_impli
common browser
build-depends:
ghc-experimental,
impli,
-- cabal-gild: discover src --include=src/REPL/** --exclude=src/REPL/Execute/Native.hs
other-modules:
REPL.Execute.Browser
REPL.Meta
REPL.Preset
REPL.State
library
import: dependencies
hs-source-dirs: src
-- cabal-gild: discover src/ --include=src/IMP/**
exposed-modules:
IMP.Config
IMP.Exception
IMP.Expression
IMP.Lexer
IMP.Parser
IMP.Pretty
IMP.Semantics.Natural
IMP.Semantics.Structural
IMP.State
IMP.Statement
IMP.Syntax
executable impli
import: dependencies, native, shared
hs-source-dirs: src
main-is: Main.hs
other-modules:
Paths_impli
executable impli-web
import: dependencies, browser, shared
hs-source-dirs: src
main-is: Web.hs
other-modules:
Paths_impli
ghc-options:
-no-hs-main
-optl-mexec-model=reactor
"-optl-Wl,--export=start"
test-suite impli-test
import: dependencies
type: exitcode-stdio-1.0
hs-source-dirs: test src
main-is: Spec.hs
other-modules:
Paths_impli
REPL.Meta
REPL.Preset
REPL.State
IMP.Config
IMP.Exception
IMP.Expression
IMP.Lexer
IMP.Parser
IMP.Pretty
IMP.Semantics.Natural
IMP.Semantics.Structural
IMP.State
IMP.Statement
IMP.Syntax
autogen-modules:
Paths_impli
build-depends:
tasty >=1.4 && <1.5,
tasty-hunit >=0.10 && <0.11,