YSC4230 Lecture 8
Q: What’s hot in PL?
Q: How to tell if variable is live? v is live is v is defined before the program point, and used after it.
Q: What about types?
Q: The idea is about INFORMATION: Liveliness defines as supersets, subtyping is opposite.
- Top is the one with MOST information.
- Bottom with least.
- e.g. Any is most pessimistic.
Q: Why got fixpoint? Fixpoint function is when Fk(X) = Fk+1(X) such that X is fixpoint of F.
Q: Why Haskell and OCaml more complicated?
A: Cannot tell statically the CFG - cause of lambda calculus encoding
Q: Doesn’t haskell make if else a primitive?
Q: In some papers - convention is flipped lol, bottom is one with most info…
Note for hw6 we are using functors.
- Define the logic of analysis in the most abstract terms.
- look at solver.
- neat -> combine
- partial order -> combine
Q: TA / research pos
Any open source compiler work?
- e.g. with ocaml?
Verifying Silica in K-framework
Resource analysis with smart contracts
~2s - ours -0.892s - clang
minikanren to synthesize minikanren
TODO: choose paper
CS5218 CS6215 Ask if I can map over CS4212