fan
fan copied to clipboard
Compile-time metaprogramming for OCaml
type dyntag --> type tyntag private
A more precise version.. ``` ocaml [ structure_item (a.ml[17,645+0]..[17,645+6]) Pstr_type [ type_declaration "t" (a.ml[17,645+5]..[17,645+6]) (a.ml[17,645+5]..[17,645+6]) ptype_params = [] ptype_cstrs = [] ptype_kind = Ptype_abstract ptype_private = Public ptype_manifest = None...
rewrite ast2pt using normal syntax. 1. should not change fan ast and parsetree at the same time
-- make changes to src/main -- build fan0 using fan -- apply fan0 to main files, dump ast compared with ast dumped by fan -- sanity check, snapshot changes to...
let f x = x \* x let f x = x *\* x *\* x let f x = +. x all work cold/ files built by running fan...
``` OCaml let f x = x * x ``` doesn't generate the correct ast with Jan 19 codebase (commit 5a8fe535cad60adb5105923d75710febc952ad89): ``` > ./pmake fan.run > ./fan.run -loaded-parsers Loaded Parsers:...
[screenshot](http://wstaw.org/m/2013/12/30/plasma-desktopVp1867.png)