aboutsummaryrefslogtreecommitdiff
path: root/notes
diff options
context:
space:
mode:
authorazidar2015-02-18 08:24:20 -0800
committerazidar2015-02-18 08:24:20 -0800
commitafde65773fc7b19dd99e0c65f718a96d0466541b (patch)
tree6c46ae062b54cfcedbf39271bb223a4b2a81439a /notes
parent4f68f75415eb89427062eb86ff21b0e53bf4cadd (diff)
Reimplemented to-working-ir. Changed Command to Stmt. Modified printing of IR to match parser.
Diffstat (limited to 'notes')
-rw-r--r--notes/notes.02.13.15.txt13
-rw-r--r--notes/notes.02.17.15.txt26
2 files changed, 39 insertions, 0 deletions
diff --git a/notes/notes.02.13.15.txt b/notes/notes.02.13.15.txt
index 8d9ee630..41329d20 100644
--- a/notes/notes.02.13.15.txt
+++ b/notes/notes.02.13.15.txt
@@ -11,3 +11,16 @@ a and b
a or b
a as T
+questions:
+1. explain curly braces in
+ print{o, _} $
+ match(k) :
+ (k:RegKind) : "reg:"
+ My guess is you are passing in a different function depending on the type of k, so you need to lazily evaluate the print, which signifies the {}'s.
+2. explain where in
+ Circuit(modules*, main(c)) where :
+ val modules* =
+ for m in modules(c) map :
+ Module(name(m), ports(m), to-command(body(m)))
+ My guess is you are again evaluating modules* before Circuit, so you are passing in modules lazily?
+3. difference between defn and defmethod?
diff --git a/notes/notes.02.17.15.txt b/notes/notes.02.17.15.txt
new file mode 100644
index 00000000..21919621
--- /dev/null
+++ b/notes/notes.02.17.15.txt
@@ -0,0 +1,26 @@
+February 17, 2015.
+
+
+Functions (defn) have (1) a static type signature and (2) an implementation
+You can define them seperately
+ type signature -> defmulti
+ implementation -> defmethod
+
+Thus, you can have multiple defmethods per defmulti.
+However, you cannot have:
+ defmulti a(x:?) -> ?
+ defn a(x:Int) -> Int
+because it is unclear which to call (2 matching static type signatures)
+
+TODO Implement resolve-kinds
+TODO Read initialization spec
+TODO Read through make-explicit-reset
+TODO If you feel up for it, rewrite make-explicit-reset
+TODO If you feel up for it, read through initialize-registers
+TODO Look into testing framework
+
+TODO
+Make stanza a git repo
+Write Makefile
+Write installation instructions for stanza
+Add P-Money as admin to github/firrtl (CuppoJava)