LinuxLinks.com
Newbies What Next ? News Forums Calendar

Search





News Sections
Home
General News (3973/0)
Reviews (628/0)
Press Releases (464/0)
Distributions (187/0)
Software (857/0)
Hardware (522/0)
Security (192/0)
Tutorials (338/0)
Off Topic (181/0)


User Functions
Username:

Password:

Don't have an account yet? Sign up as a New User


Events
There are no upcoming events




9 Best Free Haskell Books - Page 2

9 Best Free Haskell Books - Page 2

4. Write Yourself a Scheme in 48 Hours

Write Yourself a Scheme in 48 Hours
Website en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours
Author Wikibooks contributors
Format PDF, HTML
Pages 138

Write Yourself a Scheme in 48 Hours starts off with command-line arguments and parsing, and progresses to writing a fully-functional Scheme interpreter that implements a good-sized subset of R5RS Scheme. Along the way, the reader learns Haskell's I/O, mutable state, dynamic typing, error handling, and parsing features. By the end of the book, the reader should be fairly fluent in both Haskell and Scheme.

Chapters cover:

  • Overview
  • First Steps: Compiling and running
  • Parsing
    1. A Simple Parser - using the Parsec library
    2. Whitespace - add a series of improvements to the simple parser that will let it recognize progressively more complicated expressions
    3. Literal Numbers and Strings: Return Values - learn how to define a data type, and how to modify our parser so that it returns this data type
    4. Lists, Dotted Lists, and Quoted Data: Recursive Parsers - add a few more parser actions to the interpreter
  • Evaluation, Part 1
    1. Displaying Values: Show and Typeclasses - the first steps towards a working Scheme interpreter: assigning values to program fragments
    2. Evaluating Primitive Values: Pattern Matching
    3. Evaluating Primitive Functions: First-class Functions - adding basic primitives
  • Intermezzo: Error Checking & Exceptions
  • Evaluation, Part 2 - additional primitives: partial application, conditionals: pattern matching 2, list primitives: car, cdr, and cons, equal? and weak typing: heterogenous lists
  • Building a REPL: Basic I/O - build a system that can execute multiple statements without exiting the program
  • Adding Variables and Assignment: Mutable State in Haskell
  • Defining Scheme Functions: Closures and Environments - define your own functions within Scheme and use them from other functions
  • Creating IO Primitives: File I/O
  • Towards a Standard Library: Fold and Unfold - implement two primitive recursion operators (fold and unfold) and then define our whole library based on those
  • Conclusion & Further Resources

5. The Haskell School of Music -- From Signals to Symphonies

The Haskell School of Music -- From Signals to Symphonies
Website haskell.cs.yale.edu/euterpea-2/haskell-school-of-music/
Author Paul Hudak
Format PDF
Pages 353

The Haskell School of Music -- From Signals to Symphonies (a work in progress) is a book that describes Euterpea, a computer music library developed in Haskell. The library allows programming computer music applications both at the note level and the signal level.

  • An Overview of Computer Music, Euterpea, and Haskell - introduces some of the fundamental ideas of functional programming in Haskell
  • Simple Music - reveals the actual definitions of Euterpea’s functions and operators, such as note, rest,(:+:),(:=:), and trans. In addition, a number of other musical ideas are developed, and in the process more Haskell features are introduced
  • Polymorphic and Higher-Order Functions - covers abstraction over recursive definitions, append, fold, reversing a list, currying, and errors
  • A Musical Interlude - an existing composition is transcribed into Euterpea. Then a simple form of algorithmic composition is presented
  • Syntactic Magic - introduces several more of Haskell’s syntactic devices that facilitate writing concise and intuitive programs. It covers sections, anonymous functions, list comprehensions, function composition, higher-order thinking, and infix function application
  • More Music - explores a number of simple musical ideas, and contributes to a growing collection of Euterpea functions for expressing those ideas
  • Qualified Types - introduces the notions of qualified types and type classes
  • Interpretation and Performance - abstract performance, players, and putting it all together
  • Self-Similar Music - explores the notion of self-similar music — i.e. musical structures that have patterns that repeat themselves recursively in interesting ways
  • Proof by Induction - studies a powerful proof technique based on mathematical induction
  • An Algebra of Music - explores a number of properties of the Music data type and functions defined on it, properties that collectively form an algebra of music
  • Musical L-Systems - generative grammars, a simple implementation, grammars in Haskell, and an L-System grammar for music
  • Random Numbers, Probability Distributions, and Markov Chains - explores several sources of random numbers and how to use them in generating simple melodies
  • From Performance to MIDI - describes how to convert an abstract performance into a standard Midi file that can be played on any modern PC with a standard sound card
  • Basic Input/Output - expands on the play function
  • Musical User Interface - describes an elegant way to do IO involving a "musical user interface," or MUI
  • Sound and Signals - studies the fundamental nature of sound and its basic mathematical representation as a signal. The chapter also discusses discrete digital representations of a signal
  • Euterpea’s Signal Functions - shows how the theoretical concepts involving sound and signals studied in the last chapter are manifested in Euterpea
  • Spectrum Analysis - discusses the theory as well as the pragmatics for doing spectrum analysis in Euterpea
  • Additive Synthesis - add signals (usually sine waves of differing amplitudes, frequencies and phases) together to form a sound of interes

6. Yet Another Haskell Tutorial

Yet Another Haskell Tutorial

Website en.wikibooks.org/wiki/Haskell/YAHT
Author Hal Daume III
Format HTML, PDF
Pages 192

Yet Another Haskell Tutorial provides a complete introduction to the Haskell programming language. It assumes no knowledge of the Haskell language or familiarity with functional programming in general.

Chapters cover:

  • Introduction
  • Getting Started
  • Language Basics - presents the basic concepts of Haskell and the basic syntax of Haskell
  • Type Basics - uses a system of static type checking. This means that every expression in Haskell is assigned a type
  • Basic Input/Output
  • Modules - program subcomponents are divided into modules
  • Advanced Features - examines sections and infix operators, local declarations, partial application, pattern matching, guards, instance declarations, datatypes revisited, more lists, arrays, maps, layout, and the final word on lists
  • Advanced Types - type synonyms, newtypes, datatypes, classes, instances, kinds, class hierarchies, and default
  • Monads - program subcomponents are divided into modules
  • Advanced Techniques

Next Section: 9 Best Free Haskell Books - Page 3

This article is divided into three parts:

Page 1, Page 2, Page 3

Bookmark and Share


Last Updated Sunday, September 29 2013 @ 10:36 AM EDT


We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, and SQL.


Group Tests
All Group Tests

Top Free Software
6 Office Suites
7 Document Processors
6 Lean Desktops
6 Desktop Search
9 Project Management
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 DVD Tools
21 Window Managers
21 Productivity Tools
9 Terminal Emulators
21 Financial Tools
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
11 Remote Display Apps
42 Best Games
42 More Games
21 More Games
21 Notable Games (1)
21 Notable Games (2)
21 Notable Games (3)
8 ASCII Games
9 Educational Games
42 Audio Apps
42 Video Apps
6 Screencasting Apps
80 Security Apps
9 System Monitoring
6 Family History Apps
11 PDF Tools
6 Music Servers
6 Collection Managers
7 Calculator Apps
8 Geometry Apps
Free Console Apps
14 Multimedia
Programming
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
'Free' Proprietary
21 Closed-Source Apps
Top Commercial Apps
42 Games
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

All Group Tests

Other Articles
Migrating from Windows
Back up your data
Distribution Guide
Distro Portal Pages
20 Free Linux Books
Running Linux Under Windows


Older Stories
Sunday 02/09
  • 5 Highly Promising Cross-Platform IDEs (0)
  • Play the Best Linux Puzzle Games (0)
  • Essential LaTeX Tools (0)
  • Unleashing the Best Open Source Social Networking Software (0)
  • Media Streaming with Top UPnP Servers (0)
  • Highlighting the Top Open Source Pandora Radio Clients (0)

  • Tuesday 12/24
  • Spotlighting the Top Open Source Crafting Tools (0)

  • Sunday 12/15
  • Uncovering the Best Open Source Google Analytics Alternatives (0)
  • Top Email Encryption Tools (0)

  • Saturday 11/30
  • Small Image Tools that Pack a Real Punch (0)


  • Vote

    What do you find MOST attractive about Open Source software?

    Amount of customization
    Security
    Freedom provided
    Speed of development
    Quality
    Multiple versions
    Cost
    Potential to contribute
    Ability to modify code
    Results
    4688 votes | 2 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 LinuxLinks.com - All rights reserved