{"id":1129,"date":"2011-01-08T09:15:30","date_gmt":"2011-01-08T09:15:30","guid":{"rendered":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/?p=1129"},"modified":"2013-03-08T05:50:04","modified_gmt":"2013-03-08T05:50:04","slug":"errores-aritmeticos-en-haskell-y-en-lisp","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/errores-aritmeticos-en-haskell-y-en-lisp\/","title":{"rendered":"Errores aritm\u00e9ticos en Haskell y en Lisp"},"content":{"rendered":"<p>La primera vez que uno se encuentra con los siguientes c\u00e1lculos aritm\u00e9ticos en Haskell puede sorprenderse.<\/p>\n<pre lang=\"haskell\">\r\n~> ghci\r\nGHCi, version 6.12.1: http:\/\/www.haskell.org\/ghc\/  \r\nghci> 1.1 == 1.1\r\nTrue\r\nghci> 1.1+1.1 == 2.2\r\nTrue\r\nghci> 1.1+1.1+1.1 == 3.3\r\nFalse\r\nghci> 2.2+1.1 == 3.3\r\nFalse\r\n<\/pre>\n<p>El mismo comportamiento se da en Common Lisp<\/p>\n<pre lang=\"lisp\">\r\n~> clisp\r\nWelcome to GNU CLISP 2.44.1 (2008-02-23) <http:\/\/clisp.cons.org\/>\r\n\r\n[1]> (= 1.1 1.1)\r\nT\r\n[2]> (= (+ 1.1 1.1) 2.2)\r\nT\r\n[3]> (= (+ 1.1 1.1 1.1) 3.3)\r\nNIL\r\n[4]> (= (+ 1.1 2.2) 3.3)\r\nNIL\r\n<\/pre>\n<p>Para comprender estos c\u00e1lculos es aconsejable leer <a href=\"http:\/\/docs.sun.com\/source\/806-3568\/ncg_goldberg.html\">What Every Computer Scientist Should Know About Floating-Point Arithmetic<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La primera vez que uno se encuentra con los siguientes c\u00e1lculos aritm\u00e9ticos en Haskell puede sorprenderse. ~> ghci GHCi, version 6.12.1: http:\/\/www.haskell.org\/ghc\/ ghci> 1.1 == 1.1 True ghci> 1.1+1.1 == 2.2 True ghci> 1.1+1.1+1.1 == 3.3 False ghci> 2.2+1.1 == 3.3 False El mismo comportamiento se da en Common Lisp ~> clisp Welcome to GNU&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"footnotes":"","_jetpack_memberships_contains_paid_content":false},"categories":[5,92],"tags":[270,283],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/1129"}],"collection":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/comments?post=1129"}],"version-history":[{"count":4,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/1129\/revisions"}],"predecessor-version":[{"id":2953,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/1129\/revisions\/2953"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/media?parent=1129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/categories?post=1129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/tags?post=1129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}