- https://www.edx.org/course/how-code-simple-data-ubcx-htc1x
- https://www.edx.org/course/how-code-complex-data-ubcx-htc2x
Might be good to alternate topics with practical programming topics, or try to practice what you learn with code.
[1 of 2] Compiling Transform ( Transform.hs, Transform.o ) [Optimisation flags changed] | |
==================== Tidy Core ==================== | |
Result size of Tidy Core | |
= {terms: 353, types: 864, coercions: 374, joins: 0/0} | |
-- RHS size: {terms: 4, types: 9, coercions: 3, joins: 0/0} | |
gtransform | |
gtransform = \ @ a_a1p2 @ struct_a1p3 v_B1 -> v_B1 `cast` <Co:3> |
data Expr | |
= Lit Int | |
| Add Expr Expr | |
| Mul Expr Expr | |
| Div Expr Expr | |
| Sub Expr Expr | |
| Neg Expr | |
deriving (Show, Eq, Generic) | |
module Main where | |
main :: IO () | |
main = print 5 |
-- stack exec --package uniplate --package criterion -- ghc Plate.hs -O | |
-- ./Plate --output=results.html | |
{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, FlexibleContexts, UndecidableInstances #-} | |
{-# LANGUAGE TypeApplications #-} | |
{-# LANGUAGE TypeOperators #-} | |
{-# LANGUAGE DefaultSignatures #-} | |
{-# LANGUAGE ConstraintKinds #-} | |
{-# LANGUAGE MonoLocalBinds #-} |
Might be good to alternate topics with practical programming topics, or try to practice what you learn with code.
{-# LANGUAGE OverloadedStrings #-} | |
module Main where | |
import qualified Data.ByteString.Char8 as BS | |
import qualified Data.Vector as V | |
import Data.Word | |
import Data.Monoid | |
main :: IO () |
Git is a very popular Version Control system. A version control system is used to manage software projects. It lets you save the state of your code at different stages/versions so that you can have a ‘history’ of it, it let’s you compare changes throughout the history, have remote backups, collaborate with other people, and a lot more.
Other alternatives to git exist: Mercurial, VCS, SVN, TFS, Darcs, and more. But git is by far the most popular one so might as well learn that.
{-# LANGUAGE OverloadedStrings #-} | |
module Language.Shin.Parser where | |
import qualified Data.Map as M | |
import qualified Data.Vector as V | |
import qualified Data.Text as T |