Git Product home page Git Product logo

2019-winter-haskell-school's Introduction

2019 winter Haskell school in Sydney Australia

Class timetables and planning

We are based on CIS194 which is a 12 week course and we will extend it with advanced contents.

Each class has average length of 2 hours. Each week, we will pick a time and place, and announce it.

Class materials

Currently we are using Yorgey's cis194 course.

This course is widely recommended by Haskell learners.

Homework and after class discussions

Image

After each week's class, participants need to complete assignments from the cis194 course and submit to this repo as a Pull Request.

You shouldn’t skip the assignments, and remember:

If you don't do your homework and expect to be a Haskell programmer in the end of this course just by coming to/reading the lecture, you are kidding yourself. —Shine Li

Why is Zehua so good even though he jigs classes all the time? Because he does his homework. —Shine Li

You can also raise any questions or issues when you are learning Haskell and raise it to here.

You can submit your assignment to this path cis194/week1/Yourname, replace Yourname with your own.

If you don't do your homework and expect to be a Haskell programmer in the end of this course just by coming to/reading the lecture, you are KIDDING yourself.

Setup local development environment

  • Install stack
  • stack new <PACKAGE_NAME> <TEMPLATE_NAME>
  • Then you have the following choices:
    • Use GHCi. This is invoked via stack ghci under your project root.
      • Every time you change your code, you can use :r to reload your ghci session with latest code. It will show error if your code does not compile.
    • Use GHCid
      • Install GHCid by running stack install ghcid under your project
      • Run ghcid --command "stack ghci --ghci-options=-fobject-code"
      • The above command will lunach a stack ghci session with type checking and automatically re-check your code when it changes. It will print out errors when you code does not compile.
    • IDE extension
      • VSCode
        • haskell-ghcid It runs GHCid and put the feedback in the output window as well as inlining them
        • Haskell Syntax Highlighting to highlight Haskell syntax
        • There are other extensions like Haskell Language Server, Haskero which required much more complex set up.
      • vim/neovim
        • TBD
      • Emacs
        • TBD
      • atom
        • atom-haskell This is a plugin that installs a list of other plugins to support Haskell development
    • Running tests
      • stack test

Knowledge points

Image

TIL

YouTube channel Instant FP

We will upload Functional programming videos inregually into this Channel. You can subscribe to it.

2019-winter-haskell-school's People

Contributors

stevemao avatar hvariant avatar cht8687 avatar tienwei avatar zehua avatar sinogermany avatar danielmcmillan avatar shineli1984 avatar jimfang avatar powergun avatar apaniban avatar andrew-yangy avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.