(.module: lux [//] (// [".L" extension] (extension [".E" analysis] [".E" synthesis] [".E" translation] [".E" statement]) (translation (jvm [".T" common])))) (def: #export (cursor file) (-> Text Cursor) [file +1 +0]) (def: #export (source file code) (-> Text Text Source) [(cursor file) +0 code]) (def: dummy-source Source [.dummy-cursor +0 ""]) (def: #export type-context Type-Context {#.ex-counter +0 #.var-counter +0 #.var-bindings (list)}) (def: #export info Info {#.target (for {"JVM" "JVM" "JS" "JS"}) #.version //.version #.mode #.Build}) (def: #export (compiler host) (-> Top Lux) {#.info ..info #.source dummy-source #.cursor .dummy-cursor #.current-module #.None #.modules (list) #.scopes (list) #.type-context ..type-context #.expected #.None #.seed +0 #.scope-type-vars (list) #.extensions (:! Bottom {#extensionL.analysis analysisE.defaults #extensionL.synthesis synthesisE.defaults #extensionL.translation translationE.defaults #extensionL.statement statementE.defaults}) #.host (:! Bottom host)})