-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathandes.asd
115 lines (110 loc) · 3.49 KB
/
andes.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
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
;;;; -*- Lisp -*-
;;;; above sets emacs major mode to Lisp
;;;;
;;;; Use this to compile:
;;;; (asdf:operate 'asdf:load-op 'andes)
;;;; or use command (rkb) if it is defined.
;;; To turn on solver logging: :cd ~/Andes2/
(in-package :cl-user)
(defpackage :andes-asd (:use :cl :asdf))
(in-package :andes-asd)
(defsystem :andes
:name "Andes"
:description "Andes physics tutor system"
:depends-on (cl-json) ;KB/principles.cl
:default-component-class cl-source-file.cl ;use *.cl as default
:components (
;;; this should eventually be removed
(:file "andes-path")
(:module "Base"
;;; :description "Common Utilities"
:components ((:file "Unification")
(:file "auxiliary")
(:file "hash")
(:file "match")
(:file "log-condition")
(:file "Utility")))
(:module "Algebra"
:components ((:file "solver")))
(:module "HelpStructs"
:depends-on ("Base")
:components ((:file "PsmGraph")
(:file "StudentEntry")
(:file "hint-symbols")
;;for make-hint-seq in KB/errors.cl
(:file "TutorTurn")
(:file "SystemEntry"
:depends-on ("PsmGraph"))
))
(:module "Knowledge"
:depends-on ("Base" "HelpStructs" "Algebra")
:components ((:file "eqn")
(:file "Nogood")
;; depends on HelpStructs
(:file "Problem")
(:file "Ontology")
;; Natural language
(:file "nlg"
;; also Help/symbols.cl
:depends-on ("Problem" "Ontology"))
(:file "all-quantities"
:depends-on ("nlg" "Problem"))
(:file "Operators"
:depends-on ("nlg"))
(:file "qvar"
:depends-on ("Problem"))
(:file "BubbleGraph"
;; also depends on HelpStructs
:depends-on ("qvar" "eqn" "Problem"))
(:file "ErrorClass"
:depends-on ("Problem"))
(:file "Solution"
:depends-on ("Problem"))))
(:module "KB"
;;; :description "Knowledge Base"
;; Also depends on nlg
:depends-on ("Knowledge" "Base")
:serial t ;real dependancies would be better
:components (
;; treat these as normal lisp files
(:file "Physics-Funcs")
(:file "makeprob")
;; must be before any ontology
(:file "reset-KB")
(:file "principles")
(:file "quantities")
(:file "constants")
;; lots of outside dependencies:
(:file "errors")
;; TELL and NLG not defined
(:file "Ontology" )
(:file "circuit-ontology")
;; AXES-DRAWNP not defined
(:file "problem-solving")
(:file "kinematics")
(:file "dynamics")
(:file "vectors")
(:file "NewtonsNogoods")
(:file "fluids")
(:file "waves")
(:file "work-energy")
(:file "optics")
(:file "circuits")
(:file "momentum-impulse")
(:file "electromagnetism")
))
(:module "SGG"
;;; :description "Solution Graph Generator"
:depends-on ("Base" "Knowledge" "HelpStructs" "Algebra")
:components (
(:file "Qsolver") ;depends on HelpStructs
(:file "Exec"
:depends-on ("Qsolver"))
(:file "Macros"
:depends-on ("Qsolver"))
(:file "SolutionPoint")
(:file "GraphGenerator")
(:file "ProblemSolver")
(:file "print-solutions")
(:file "SolutionSets")))
))