Skip to content

Instantly share code, notes, and snippets.

@pbalduino
Last active August 29, 2015 14:00
Show Gist options
  • Select an option

  • Save pbalduino/11385513 to your computer and use it in GitHub Desktop.

Select an option

Save pbalduino/11385513 to your computer and use it in GitHub Desktop.
Por que existe um tipo para números racionais em Clojure?
;; Por que existe um tipo para números racionais em Clojure?
(/ 1 3) ; Clojure retorna o tipo Ratio por padrão numa divisão
; 1/3
(double (/ 1 3)) ; agora temos um tipo Double do Java
; 0.3333333333333333
(->> 1/3 ; o valor de 1 / 3
double ; é convertido para Double
(repeat 100000) ; e criamos uma sequencia com 100.000 itens
(reduce +)) ; e somamos
; 33333.33333328976
(->> 1/3 ; o valor de 1 / 3
(repeat 100000) ; e criamos uma sequencia com 100.000 itens
(reduce +) ; e somamos
double) ; para só então convertemos para Double
; 33333.33333333333
;; Resposta: Para que você perca o mínimo possível de precisão num cálculo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment