on master help sign in
Float primitives
01283ecDavid Christiansen
src/Core/Execute.hs+22
@@ -390,6 +390,28 @@ execApp' env ctxt f@(EP _ n _) args =
390 primResBool (i1 > i2)
390 primResBool (i1 > i2)
391 getOp (UN "prim__gteInt") [EConstant (I i1), EConstant (I i2)] =
391 getOp (UN "prim__gteInt") [EConstant (I i1), EConstant (I i2)] =
392 primResBool (i1 >= i2)
392 primResBool (i1 >= i2)
393+ getOp (UN "prim__floatACos") [EConstant (Fl f)] =
394+ primRes Fl (acos f)
395+ getOp (UN "prim__floatASin") [EConstant (Fl f)] =
396+ primRes Fl (asin f)
397+ getOp (UN "prim__floatATan") [EConstant (Fl f)] =
398+ primRes Fl (atan f)
399+ getOp (UN "prim__floatCeil") [EConstant (Fl f)] =
400+ primRes Fl (fromIntegral (ceiling f))
401+ getOp (UN "prim__floatCos") [EConstant (Fl f)] =
402+ primRes Fl (cos f)
403+ getOp (UN "prim__floatExp") [EConstant (Fl f)] =
404+ primRes Fl (exp f)
405+ getOp (UN "prim__floatFloor") [EConstant (Fl f)] =
406+ primRes Fl (fromIntegral (floor f))
407+ getOp (UN "prim__floatLog") [EConstant (Fl f)] =
408+ primRes Fl (log f)
409+ getOp (UN "prim__floatSin") [EConstant (Fl f)] =
410+ primRes Fl (sin f)
411+ getOp (UN "prim__floatSqrt") [EConstant (Fl f)] =
412+ primRes Fl (sqrt f)
413+ getOp (UN "prim__floatTan") [EConstant (Fl f)] =
414+ primRes Fl (tan f)
393 getOp (UN "prim__intToFloat") [EConstant (I i)] =
415 getOp (UN "prim__intToFloat") [EConstant (I i)] =
394 primRes Fl (fromRational (toRational i))
416 primRes Fl (fromRational (toRational i))
395 getOp (UN "prim__intToStr") [EConstant (I i)] =
417 getOp (UN "prim__intToStr") [EConstant (I i)] =