(.module: [lux (#- i64) [control monad] [data [text format]] [language [compiler ("operation/" Monad)]]] [luxc [lang [host [jvm (#+ Inst Operation) ["$i" inst] ["$t" type]]]]]) (def: #export (bit value) (-> Bit (Operation Inst)) (operation/wrap ($i.GETSTATIC "java.lang.Boolean" (if value "TRUE" "FALSE") ($t.class "java.lang.Boolean" (list))))) (do-template [ ] [(def: #export ( value) (-> (Operation Inst)) (operation/wrap (|>> ( value) )))] [i64 Int $i.long ($i.wrap #jvm.Long)] [f64 Frac $i.double ($i.wrap #jvm.Double)] [text Text $i.string (<|)] )