(.module: [lux (#- i64) [target [jvm ["." descriptor] ["$t" type]]] [tool [compiler [phase ("operation@." monad)]]]] [luxc [lang [host ["." jvm (#+ Inst Operation) ["_" inst]]]]]) (def: #export bit (-> Bit (Operation Inst)) (let [Boolean (descriptor.class "java.lang.Boolean")] (function (_ value) (operation@wrap (_.GETSTATIC Boolean (if value "TRUE" "FALSE") Boolean))))) (template [ ] [(def: #export ( value) (-> (Operation Inst)) (let [loadI (|> value )] (operation@wrap (|>> loadI ))))] [i64 (I64 Any) (<| _.long .int) (_.wrap descriptor.long)] [f64 Frac _.double (_.wrap descriptor.double)] [text Text _.string (<|)] )