FStarLang/FStar

Floating point literals are badly handled by the F# extraction mechanism

Open

#793 opened on Dec 23, 2016

View on GitHub
 (8 comments) (0 reactions) (0 assignees)F* (258 forks)auto 404
area/fsharp-vs-ocamlcomponent/buildcomponent/extractiongood first issuekind/bug

Repository metrics

Stars
 (3,068 stars)
PR merge metrics
 (PR metrics pending)

Description

Using literal floating point in some meant-to-be-extracted file like the F* compiler can produce bad results when extracting with the F# version of the F* compiler (seems to be fine with the ocaml version). For example 1.0 is extracted to 1 and 0.99 to 0,99 which are no longer of the same type. A temporary solution is to use float_of_string "1.0" but I would be rather surprised if there is no better way to do that in F#.

Contributor guide