Skip to content

Instantly share code, notes, and snippets.

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

  • Save danclien/7596e3b336c5a9420f58 to your computer and use it in GitHub Desktop.

Select an option

Save danclien/7596e3b336c5a9420f58 to your computer and use it in GitHub Desktop.

Revisions

  1. danclien revised this gist Aug 28, 2014. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions learning_haskell.md
    Original file line number Diff line number Diff line change
    @@ -111,6 +111,7 @@
    * `hspec`
    * `hunit`
    * `QuickCheck`
    * `hlint`
    * `text`
    * `aeson`
    * `scotty`
  2. danclien revised this gist Aug 28, 2014. 1 changed file with 0 additions and 2 deletions.
    2 changes: 0 additions & 2 deletions learning_haskell.md
    Original file line number Diff line number Diff line change
    @@ -24,8 +24,6 @@
    * `ghc-pkg`
    * GHC
    * Deferring type errors
    * Displaying Template Haskell generated code
    * Optimizations
    * Showing warnings
    * GHCi
    * Importing modules
  3. danclien revised this gist Aug 28, 2014. 1 changed file with 0 additions and 1 deletion.
    1 change: 0 additions & 1 deletion learning_haskell.md
    Original file line number Diff line number Diff line change
    @@ -107,7 +107,6 @@
    * `Either`
    * `IO`
    * `Reader`/`ReaderT`
    * `ST`

    ## Libraries

  4. danclien revised this gist Aug 28, 2014. 1 changed file with 3 additions and 0 deletions.
    3 changes: 3 additions & 0 deletions learning_haskell.md
    Original file line number Diff line number Diff line change
    @@ -50,6 +50,9 @@
    * Defining functions
    * Pattern matching
    * Modules
    * Importing
    * Exporting functions
    * Exporting modules
    * `$`
    * `if`/`then`/`else`
    * `let`/`in`
  5. danclien revised this gist Aug 28, 2014. 1 changed file with 8 additions and 3 deletions.
    11 changes: 8 additions & 3 deletions learning_haskell.md
    Original file line number Diff line number Diff line change
    @@ -70,7 +70,9 @@
    ## Concepts

    * Equational reasoning
    * Laziness
    * Parametricity
    * Total functions
    * Value constructors
    * Type constructors
    * Sum types
    @@ -81,15 +83,18 @@
    * Currying
    * Function currying
    * Type currying
    * Semigroup
    * `Monoid`
    * `Functor`
    * `Applicative`
    * `Alternative`
    * `Monads`
    * Semigroup
    * `Monoid`
    * Monad transformers
    * Free monads
    * Laziness
    * Error handling
    * `Maybe`
    * `Either`
    * `error`

    ## Types

  6. danclien renamed this gist Aug 28, 2014. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  7. danclien revised this gist Aug 28, 2014. 1 changed file with 5 additions and 0 deletions.
    5 changes: 5 additions & 0 deletions skills_for_haskell.md
    Original file line number Diff line number Diff line change
    @@ -106,5 +106,10 @@
    * `hspec`
    * `hunit`
    * `QuickCheck`
    * `text`
    * `aeson`
    * `scotty`
    * `operational`
    * `postgresql-simple`
    * `lens`
    * `validation`
  8. danclien renamed this gist Aug 28, 2014. 1 changed file with 0 additions and 1 deletion.
    1 change: 0 additions & 1 deletion haskell_topics.md → skills_for_haskell.md
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,3 @@

    ## Tools

    * Cabal
  9. danclien created this gist Aug 28, 2014.
    111 changes: 111 additions & 0 deletions haskell_topics.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,111 @@

    ## Tools

    * Cabal
    * Starting a new project
    * Sandboxes
    * Creating
    * Deleting
    * Adding dependencies
    * Installing dependencies
    * Adding one or more test suites
    * Unit tests
    * Property-based tests
    * Linting
    * Benchmarking
    * Adding modules
    * Creating libraries
    * Creating executables
    * Starting a REPL
    * Building the library/executable
    * Running the executables
    * Running tests
    * Adding GHC options
    * `~/.cabal` vs `~/.ghc`
    * `ghc-pkg`
    * GHC
    * Deferring type errors
    * Displaying Template Haskell generated code
    * Optimizations
    * Showing warnings
    * GHCi
    * Importing modules
    * Reloading code
    * Loading files
    * `:type`/`:t`
    * `:info`/`:i`
    * `:kind`/`:k`
    * Declaring functions
    * Declaring multiline functions
    * Hackage
    * Finding libraries
    * Reading documentation
    * Hoogle
    * Finding functions
    * Stackage

    ## Basic Syntax

    * Type signatures
    * Calling functions
    * Defining functions
    * Pattern matching
    * Modules
    * `$`
    * `if`/`then`/`else`
    * `let`/`in`
    * `where`
    * `case`/`of`
    * `data`
    * Record syntax
    * `deriving`
    * `!`
    * `type`
    * `newtype`
    * Record syntax
    * `deriving`
    * `do`
    * `let`


    ## Concepts

    * Equational reasoning
    * Parametricity
    * Value constructors
    * Type constructors
    * Sum types
    * Product types
    * Type classes
    * Type constraints
    * Type kinds
    * Currying
    * Function currying
    * Type currying
    * `Functor`
    * `Applicative`
    * `Alternative`
    * `Monads`
    * Semigroup
    * `Monoid`
    * Monad transformers
    * Free monads
    * Laziness

    ## Types

    * `Text`
    * `List`
    * `Maybe`
    * `Either`
    * `IO`
    * `Reader`/`ReaderT`
    * `ST`

    ## Libraries

    * `hspec`
    * `hunit`
    * `QuickCheck`
    * `lens`
    * `validation`