-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathcl-parametric-types.asd
52 lines (46 loc) · 2.08 KB
/
cl-parametric-types.asd
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
;; -*- lisp -*-
;; This file is part of cl-parametric-types.
;; Copyright (c) 2016 Massimiliano Ghilardi
;;
;; This library is free software: you can redistribute it and/or
;; modify it under the terms of the Lisp Lesser General Public License
;; (http://opensource.franz.com/preamble.html), known as the LLGPL.
;;
;; This library is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty
;; of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
;; See the Lisp Lesser General Public License for more details.
(asdf:defsystem #:cl-parametric-types
:version "0.0.1"
:author "Massimiliano Ghilardi"
:license "LLGPL"
:description "C++-style templates for Common Lisp"
:depends-on (:closer-mop :introspect-environment :log4cl)
:components
((:static-file "cl-parametric-types.asd")
(:module :lang
:components
((:file "package")
(:file "list" :depends-on ("package"))
(:file "tree" :depends-on ("package"))
(:file "alias" :depends-on ("tree"))
(:file "eval" :depends-on ("package"))
(:file "error" :depends-on ("eval"))
(:file "functions" :depends-on ("package"))
(:file "types" :depends-on ("package"))
(:file "typexpand" :depends-on ("package"))
(:file "defstruct" :depends-on ("typexpand"))))
(:module :main :depends-on (:lang)
:components
((:file "0-package")
(:file "1-check" :depends-on ("0-package"))
(:file "1-generics" :depends-on ("0-package"))
(:file "1-log" :depends-on ("0-package"))
(:file "1-options" :depends-on ("0-package"))
(:file "1-struct" :depends-on ("1-generics"))
(:file "2-simplify" :depends-on ("1-generics"))
(:file "2-normalize" :depends-on ("2-simplify"))
(:file "3-concretize" :depends-on ("2-simplify"))
(:file "4-specialize" :depends-on ("1-check" "2-normalize"))
(:file "5-instantiate" :depends-on ("1-log" "3-concretize"))
(:file "6-template" :depends-on ("1-struct" "1-options" "5-instantiate"))))))