As mentioned in other responses, floating point numbers are usually approximations, with round-off error in the least significant digits (both floats and doubles do this, with more digits of precision for doubles, at the cost of more storage in memory).
Depending on how deeply you want to dive into the details of this, this article may interest you: "What Every Computer Scientist Should Know About Floating-Point Arithmetic" https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html There is a whole field of study called "numerical analysis" where people study and quantify how much error can be introduced in programs that calculate using floating point values in different ways. Two programs that according to algebra will calculate the same value, can calculate values with much different 'error ranges' from each other: https://en.wikipedia.org/wiki/Numerical_analysis There are Fortran libraries that are used _because_ the language specifies the order of operations and how they relate to the source code, so the programmer has control over such things, i.e. the compiler is _not allowed_ to make certain kinds of transformations that may appear equivalent to the source code according to the usual rules of algebra. Andy On Sat, Dec 15, 2018 at 10:11 AM ru <soro...@oogis.ru> wrote: > Dear Clojure users and team! > > Please explain me this result: > > Ruslans-iMac:clojure ru$ lein repl > > nREPL server started on port 54147 on host 127.0.0.1 - nrepl:// > 127.0.0.1:54147 > > REPL-y 0.3.7, nREPL 0.2.12 > > Clojure 1.8.0 > > Java HotSpot(TM) 64-Bit Server VM 11.0.1+13-LTS > > Docs: (doc function-name-here) > > (find-doc "part-of-name-here") > > Source: (source function-name-here) > > Javadoc: (javadoc java-object-or-class-here) > > Exit: Control+D or (exit) or (quit) > > Results: Stored in vars *1, *2, *3, an exception in *e > > > user=> (float 0.819869321599107) > > 0.81986934 > > user=> > > > Thanks in advance. > > > Sincerely, > > Ru > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with > your first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.