Skip to content

Instantly share code, notes, and snippets.

@soupi
soupi / getting-started-haskell-stack.md
Last active November 11, 2019 19:35
Getting Started with Haskell using Stack

Note: you'll be able to submit pull request here

In this article we'll talk about installing a Haskell toolchain on your computer.

Installing a Haskell toolchain becomes really easy when you use Stack.

@soupi
soupi / bower.json
Last active December 15, 2016 21:12
packages for try-purescript-slides
{
"name": "try-purescript-slides",
"license": "BSD-3-Clause",
"version": "0.1.0",
"ignore": [
"**/.*",
"node_modules",
"bower_components",
"test",
"tests",
@soupi
soupi / Main.purs
Last active January 26, 2017 19:58
Try PureScript - slides edition
module Main where
import Prelude (($), (<>))
import Slides
import Slides.Remember
main = runSlidesAndRemember
[ slide "Slides" $
valign
[ image "https://gilmi.xyz/static/misc/ducks.gif"
@soupi
soupi / building-gathering.md
Last active November 11, 2019 19:34
building gathering rfc

title: Building Gathering: A Website For Announcing Group Events route: building-gathering authors: Gil date: 2017-04-25 tags: haskell, web, fp, spock


@soupi
soupi / concat.hs
Created July 31, 2017 21:28
simple concatenative interpreter
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE LambdaCase #-}
import Control.Monad
import Data.Data
import Data.Typeable
import System.IO
import System.Exit
type Stack = [Lit]
@soupi
soupi / Json.hs
Last active November 11, 2019 19:34
A simple JSON EDSL
{- | An EDSL for defining and printing JSON values
-}
import Data.List (intercalate)
----------------
-- JSON Model --
----------------
-- | The JSONValue data type represents a JSON Value
@soupi
soupi / Parser.hs
Created March 10, 2018 13:10
Shin Parser
{-# 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
@soupi
soupi / git.org
Last active June 28, 2022 16:37
Beginners Git Guide

Beginner’s Git

What is Git?

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.