-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathao.cabal
137 lines (116 loc) · 3.5 KB
/
ao.cabal
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
Name: ao
Version: 0.20
Synopsis: Interpreter for AO
Category: Awelon
Description:
Awelon Object (AO) is a simple language that expands into Awelon
Byte Code (ABC), or an ambiguous variation thereof (AMBC). AO is
ultimately designed for Reactive Demand Programming (RDP) but is
suitable for procedural and functional programming. The paradigm
can change based on the implementation and provided capabilities.
This particular implementation is imperative in nature.
This package includes library `ao` and executables `ao` and `aoi`
for working with AO code. `aoi` is a simple REPL, while `ao` will
run tests or provide quick introspection of the AO dictionary. AO
uses a global dictionary concept instead of importing libraries.
This implementation uses both interpreters and JIT (via 'plugins').
This package currently supports a filesystem based dictionary with
'.ao' files. Environment variable AO_PATH determines where we look
for these files; AO_DICT (default "lang") determines the root file.
The long term goal of this package is to get AO development into a
state where it can easily bootstrap.
CONFIGURATION NOTES: enable library-for-ghci or JIT won't work
Author: David Barbour
Maintainer: [email protected]
Homepage: http://github.com/dmbarbour/awelon
Package-Url:
Copyright: (c) 2013-2014 by David Barbour
License: BSD3
license-file: LICENSE.txt
Stability: experimental
build-type: Simple
cabal-version: >= 1.16.0.3
Source-repository head
type: git
location: http://github.com/dmbarbour/awelon.git
Executable aoi
hs-source-dirs: hsrc_aoi hsrc_util
default-language: Haskell2010
build-depends: base (>= 4.5 && < 5)
, ao
, transformers
, parsec
, text
, bytestring, byteable
, containers
, haskeline (>= 0.7.1 && < 0.9)
, system-fileio (>= 0.3.11 && < 0.4)
, system-filepath (>= 0.4.10)
, plugins (>= 1.5.4)
, entropy (>= 0.2.2)
main-is: Main.hs
ghc-options: -auto-all -Wall -rtsopts -threaded
Executable ao
hs-source-dirs: hsrc_ao hsrc_util
default-language: Haskell2010
build-depends: base (>= 4.6 && < 5)
, ao
, transformers
, parsec
, text
, bytestring, byteable
, containers
, system-fileio (>= 0.3.11 && < 0.4)
, system-filepath (>= 0.4.10)
, plugins (>= 1.5.4)
, entropy (>= 0.2.2)
, Decimal (>= 0.4)
main-is: Main.hs
ghc-options: -auto-all -Wall -rtsopts -threaded
Library
hs-Source-Dirs: hsrc
default-language: Haskell2010
Build-Depends: base (>= 4.5 && < 5)
, parsec
, text (>= 0.11 && < 1.3)
, system-fileio (>= 0.3.11 && < 0.4)
, system-filepath (>= 0.4.10)
, containers (>= 0.5 && < 0.7)
, transformers
, cryptohash (>= 0.11)
, bytestring, byteable
, Decimal (>= 0.4)
Exposed-Modules:
ABC.Operators
ABC.Quote
ABC.Simplify
ABC.Resource
ABC.Base16
ABC.Compress
ABC.Imperative.Value
ABC.Imperative.Operations
ABC.Imperative.Interpreter
ABC.Imperative.Runtime
ABC.Imperative.Resource
ABC.Imperative.Prelude
-- ABC.Imperative.JIT
AO.Code
AO.Parser
AO.Dict
AO.Compile
AO.Precompile
AO.AOFile
--
-- todo: Typechecking
-- Partial Evaluation
-- Fixpoint Detection
-- Intermediate Language
--
-- JIT compilation (via annotation, plugins)
-- tracing & caching options (from runtime)
--
Other-Modules:
AO.Char
AO.Env
AO.InnerDict
ghc-options: -Wall -auto-all