{"id":20929,"date":"2023-02-09T05:54:29","date_gmt":"2023-02-09T05:54:29","guid":{"rendered":"https:\/\/www.booksofall.com\/tw\/?post_type=product&#038;p=20929"},"modified":"2023-02-09T05:54:47","modified_gmt":"2023-02-09T05:54:47","slug":"speeding-through-haskell","status":"publish","type":"product","link":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/","title":{"rendered":"Speeding Through Haskell"},"content":{"rendered":"<h5>This is a work in progress.<\/h5>\n<p>Warning! This book is a work in progress. Read at your own risk! Hello there! This is a book that will show you around the <a href=\"https:\/\/www.haskell.org\/\">Haskell programming language<\/a>. If you&#8217;re not already familiar (or too familiar) with programming in another language, you might need to put in extra work. Don&#8217;t be discouraged! While the stu\u001b in the beginning may seem extremely boring, mind-blowing things start happening later on.<\/p>\n<p>This book has a lot of footnotes. You don&#8217;t have to read them, but sometimes you might gain some insight by doing so. You can click on them to jump to them faster (readers from the website might want to download the book for this reason). You can click on the table of contents as well.<\/p>\n<p>Feel free to jump around the book as well! I&#8217;ve added as many links as possible to help you get around to cooler stu\u001b if you&#8217;re curious about it. I also have short recaps of the important stu\u001b as it&#8217;s needed so you don&#8217;t have to go back and hunt for the particular chapter the concept got introduced in. The writing in this book may not be polished yet, and some things may be missing, but take a look \u0016 you might just like it!<\/p>\n<p>Your turn! Exercises<\/p>\n<p>At the end of each subsection I will add some exercises in the form of questions, quizzez or whatever. If you&#8217;re stuck, as the saying goes, Try HarderTM. I usually go to Google when I&#8217;m not sure of something. Don&#8217;t be afraid to \u0010cheat\u0011 this way2 but be sure that you learn something from it!<\/p>\n<p>After you&#8217;re done with the exercises, read the hints at the end. They often provide additional insight beyond answering the question. Some might explain why we do things one way and not another. Others might give interesting or fun facts about Haskell. Or you might just have found a solution that is completely original and creative!<\/p>\n<h5>1.2. Why Haskell?<\/h5>\n<p>Every language (human or computer) is unique. But there exists a special breed of languages \u0016 that challenge and shape the way one thinks. <a href=\"https:\/\/www.haskell.org\/\">Haskell<\/a> is one of them \u0016 lost innovation in a sea of clich\u00e9s. Unfortunately, the only people apparently interested in Haskell are academics who blindly push the boundaries and gurus who want to learn \u0010just one more language\u0011.<\/p>\n<p>On a more concrete note, if Haskell were to have a list of prerequisites, it would be very unusual indeed \u0016 at least two of the following:<\/p>\n<ul>\n<li>Extensive programming experience<\/li>\n<li>A background in mathematics<\/li>\n<li>An inclination toward the abstract<\/li>\n<li>Perseverance<\/li>\n<li>Hard work<\/li>\n<\/ul>\n<div>Welcome to\u00a0<b>Speeding Through Haskell<\/b>, home of the newest Haskell programming book. It&#8217;s so new, it&#8217;s not even finished yet!<\/div>\n<div><\/div>\n<div><a href=\"http:\/\/en.wikipedia.org\/wiki\/Haskell_%28programming_language%29\">Haskell<\/a>\u00a0is an awesome programming language. It&#8217;s a lot more mathematically rigorous than others, which means that programs can be\u00a0proven\u00a0to be correct and in most cases, if they compile, they will run just fine too. This involves new challenges, however. For instance, you can&#8217;t change even a single &#8220;variable&#8221;. Everything is done via\u00a0<a href=\"http:\/\/www.sthaskell.com\/\">recursion<\/a>\u00a0and other tricks. Don&#8217;t worry, it&#8217;ll seem very natural once you try it out.<\/div>\n<div><\/div>\n<div>You can take a look, but keep in mind that it&#8217;s a work in progress. Some things may be inaccurate; many will be incomplete. Things marked\u00a0[fixme]\u00a0are broken;\u00a0[xref]\u00a0tags indicate missing cross-references. I&#8217;m aiming for about 15-20 chapters for the finished book &#8212; it&#8217;s going to take a while.<\/div>\n<div><\/div>\n<div>Meanwhile, you might want to shoot an email to\u00a0questions at sthaskell dot com\u00a0for corrections (if something&#8217;s even slightly wrong), suggestions (if something&#8217;s missing or poorly explained) or just to say hello. However, the\u00a0<a href=\"http:\/\/webchat.freenode.net\/?channels=haskell\">#haskell<\/a>\u00a0freenode channel is a better place for general Haskell questions. There are many awesome people over there happy to answer yours (I go by the name\u00a0brisingr).<\/div>\n<div><\/div>\n<div>If you want the book, you can\u00a0<span style=\"font-size: medium;\"><b><a href=\"https:\/\/docs.google.com\/uc?export=download&amp;id=0Bx0Qn4cm6WCYMHlNN2dDSE1TUU9hSjlNTklYaFJ2QQ\">download it<\/a><\/b><\/span>. It&#8217;s the same version as the one below, but the footnotes, cross-references and the table of contents are clickable (depending on your PDF viewer). Don&#8217;t forget to check back often for updates!<\/div>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p><iframe frameborder=\"0\" allowtransparency=\"true\" allowFullscreen=\"true\" style=\"width: 100%; height: 700px; border: none;\" src=\"https:\/\/online.visual-paradigm.com\/share\/book\/haskell-book-192m4rp6me?enforceShowPromotionBar=true&#038;p=1\"><\/iframe><\/p>\n","protected":false},"featured_media":20933,"template":"","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":""},"product_brand":[],"product_cat":[324],"product_tag":[],"class_list":{"0":"post-20929","1":"product","2":"type-product","3":"status-publish","4":"has-post-thumbnail","6":"product_cat-haskell","8":"first","9":"instock","10":"shipping-taxable","11":"product-type-simple"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Speeding Through Haskell - BooksOfAll Traditional Chinese<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/\" \/>\n<meta property=\"og:locale\" content=\"zh_TW\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Speeding Through Haskell - BooksOfAll Traditional Chinese\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/\" \/>\n<meta property=\"og:site_name\" content=\"BooksOfAll Traditional Chinese\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-09T05:54:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png\" \/>\n<meta name=\"twitter:label1\" content=\"\u9810\u4f30\u95b1\u8b80\u6642\u9593\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 \u5206\u9418\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/\",\"url\":\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/\",\"name\":\"Speeding Through Haskell - BooksOfAll Traditional Chinese\",\"isPartOf\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png\",\"datePublished\":\"2023-02-09T05:54:29+00:00\",\"dateModified\":\"2023-02-09T05:54:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#breadcrumb\"},\"inLanguage\":\"zh-TW\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-TW\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#primaryimage\",\"url\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png\",\"contentUrl\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png\",\"width\":\"539\",\"height\":\"457\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.booksofall.com\/tw\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Categories\",\"item\":\"https:\/\/www.booksofall.com\/tw\/categories\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Speeding Through Haskell\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/#website\",\"url\":\"https:\/\/www.booksofall.com\/tw\/\",\"name\":\"BooksOfAll Traditional Chinese\",\"description\":\"Biggest IT eBooks library and learning resources - Free eBooks for programming, computing, artificial intelligence and more.\",\"publisher\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.booksofall.com\/tw\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-TW\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/#organization\",\"name\":\"BooksOfAll Traditional Chinese\",\"url\":\"https:\/\/www.booksofall.com\/tw\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-TW\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png\",\"contentUrl\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png\",\"width\":166,\"height\":30,\"caption\":\"BooksOfAll Traditional Chinese\"},\"image\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Speeding Through Haskell - BooksOfAll Traditional Chinese","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/","og_locale":"zh_TW","og_type":"article","og_title":"Speeding Through Haskell - BooksOfAll Traditional Chinese","og_url":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/","og_site_name":"BooksOfAll Traditional Chinese","article_modified_time":"2023-02-09T05:54:47+00:00","og_image":[{"url":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_image":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png","twitter_misc":{"\u9810\u4f30\u95b1\u8b80\u6642\u9593":"3 \u5206\u9418"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/","url":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/","name":"Speeding Through Haskell - BooksOfAll Traditional Chinese","isPartOf":{"@id":"https:\/\/www.booksofall.com\/tw\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#primaryimage"},"image":{"@id":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#primaryimage"},"thumbnailUrl":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png","datePublished":"2023-02-09T05:54:29+00:00","dateModified":"2023-02-09T05:54:47+00:00","breadcrumb":{"@id":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#breadcrumb"},"inLanguage":"zh-TW","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/"]}]},{"@type":"ImageObject","inLanguage":"zh-TW","@id":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#primaryimage","url":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png","contentUrl":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e487e4743c5.png","width":"539","height":"457"},{"@type":"BreadcrumbList","@id":"https:\/\/www.booksofall.com\/tw\/speeding-through-haskell\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.booksofall.com\/tw\/"},{"@type":"ListItem","position":2,"name":"Categories","item":"https:\/\/www.booksofall.com\/tw\/categories\/"},{"@type":"ListItem","position":3,"name":"Speeding Through Haskell"}]},{"@type":"WebSite","@id":"https:\/\/www.booksofall.com\/tw\/#website","url":"https:\/\/www.booksofall.com\/tw\/","name":"BooksOfAll Traditional Chinese","description":"Biggest IT eBooks library and learning resources - Free eBooks for programming, computing, artificial intelligence and more.","publisher":{"@id":"https:\/\/www.booksofall.com\/tw\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.booksofall.com\/tw\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-TW"},{"@type":"Organization","@id":"https:\/\/www.booksofall.com\/tw\/#organization","name":"BooksOfAll Traditional Chinese","url":"https:\/\/www.booksofall.com\/tw\/","logo":{"@type":"ImageObject","inLanguage":"zh-TW","@id":"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/","url":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png","contentUrl":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png","width":166,"height":30,"caption":"BooksOfAll Traditional Chinese"},"image":{"@id":"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product\/20929","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/types\/product"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/media\/20933"}],"wp:attachment":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/media?parent=20929"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product_brand?post=20929"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product_cat?post=20929"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product_tag?post=20929"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}