Skip to content

Instantly share code, notes, and snippets.

View sordina's full-sized avatar

Lyndon Maydwell sordina

View GitHub Profile
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE BlockArguments #-}
-- From: https://patchbay.pub
--
-- Normal Usage:
-- Shell 1: curl localhost:9000/test1
-- Shell 2: curl -s localhost:9000/test1 -X POST -T /dev/stdin
--
-- Pub-Sub Usage:
@sordina
sordina / gc.c
Last active November 15, 2019 05:26
Implementation of Baby's first Garbage Collector from http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector
// http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/
//
#define STACK_MAX 256
#define INITIAL_GC_THRESHOLD 2
#include <stdio.h>
#include <stdlib.h>
void gc(); // Pre-Declared for co-recursive usage
{-# LANGUAGE BlockArguments #-}
module Main where
import Data.Char
import Data.List.Split
import qualified Data.Set
main :: IO ()
-- https://gist.github.com/sordina/ea8c66ddcc467f77b58b0af0b5628435
module Lib ( main ) where
import Data.Tree
import Data.List
import System.Environment
type Capacity = Int
type Level = Int
@sordina
sordina / gist:d3099ea5385bb22020064944ee9cefc4
Created September 28, 2018 05:18
otf_apl_j_substitutions.txt
# https://en.wikipedia.org/wiki/APL_syntax_and_symbols
# https://code.jsoftware.com/wiki/NuVoc
# https://news.ycombinator.com/item?id=8605606
#
#
# sub asterisk by multiply;
# Roll ?B
# Ceiling ⌈B >.
sub greater period by uni2308;
module Main where
main :: IO ()
main = interact (unlines . map (go . read) . lines)
go :: Int -> String
go n = case term n
of [] -> "nothing"
[(x,"")] -> numb x
xs -> unwords $ map item xs
defmodule Looksay do
def build([h|l]) do
n = l |> length |> Looksay.succ |> inspect
n <> h
end
def succ(x), do: x + 1
def group([],x), do: [ x ]
def group([h|t],[]), do: group(t,[h])
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE DeriveFunctor #-}
module Main where
import Control.Arrow
import Data.Functor.Classes
data Fix f = In { out :: (f (Fix f)) }
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE ApplicativeDo #-}
{-# LANGUAGE NoMonomorphismRestriction #-}
module Main where
import Data.String
import Data.Monoid hiding (Alt)
import Control.Applicative
import Control.Monad.Logic
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE ScopedTypeVariables #-}
import Language.Haskell.Interpreter
import Text.InterpolatedString.Perl6
import Control.Exception
import Control.Monad
import Data.Traversable
format :: Either InterpreterError Bool -> String