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