Skip to content

Instantly share code, notes, and snippets.

View cpressey's full-sized avatar
🚚
Moved to codeberg.org/cpressey

Chris Pressey cpressey

🚚
Moved to codeberg.org/cpressey
View GitHub Profile
@cpressey
cpressey / Efficiently-Dull.md
Created October 23, 2022 10:39
"The League of Efficiently Dull Gentlemen"
Project Perl Python JS Lua C/C++ Scheme Haskell Other
ALPACA@rel_1_1 Py
Animals@rel_1_1_2014_0819 Erlang
Apple-Befunge@rel_1_1_2014_0819 BASIC
Arboretuum@rel_1_0_2014_0819 R5
Backtracking-Wang-Tiler@1.0-2021.1221 JS
Beatnik@0.1 Py
BefOS@rel_0_10 YASM
Befunge-93@rel_2_25 C

SI2

SI2 is the successor to the SITU-SOL project, which was undertaken during RetroChallenge 2015/07.

Observing that, in the beginning, programs were written on paper and painstakingly hand-translated into computer memory, and that in the modern day, paper very often plays no role at all in the software development process, the objective of the SITU-SOL project was to go

@cpressey
cpressey / .bash_aliases
Created August 10, 2021 09:57
.bash_aliases
# encoding: UTF-8
bind '"\e[A":history-search-backward'
bind '"\e[B":history-search-forward'
export PATH="$HOME/.cabal/bin:$HOME/.local/bin:$PATH"
export EDITOR=nano
alias unpyc="find . -name '*.pyc' -exec rm -f {} \;"
alias rsyncavd="rsync --archive --verbose --delete"
alias git-savepatch='git diff >'
alias chintzy-httpd='python2 -m SimpleHTTPServer'
@cpressey
cpressey / OperationalSansGADTs.hs
Last active October 8, 2020 13:21
Operational monad sans GADTs
module OperationalSansGADTs where
import Control.Monad (liftM, ap)
--
-- Adapted from "The Operational Monad Tutorial":
-- https://apfelmus.nfshost.com/articles/operational-monad.html
--
data Program instr a b = Then (instr a) (a -> Program instr a b)
@cpressey
cpressey / PipelineCombinators.hs
Created September 4, 2020 13:33
PipelineCombinators.hs
module PipelineCombinators where
import Data.Either
import qualified Data.Functor.Alt
import qualified Data.Function
import qualified Control.Monad
--
-- Combinators for pipelines. Each of these functions takes one or more
-- parameters and yields a combinator that is intended to map functions
@cpressey
cpressey / Future directions for SixtyPical.md
Last active December 10, 2023 12:18
Future directions for SixtyPical
@cpressey
cpressey / Calling an anonymous function directly in various languages.md
Last active June 1, 2020 15:55
Calling an anonymous function directly in various languages

Just a little survey of what code to create an anonymous function and immediately call it looks like in a handful of high-level languages. All of these expressions should evaluate to 10.

Language Code
Python (lambda x: x+1)(9)
Ruby (lambda {|x| x+1}).call(9)
Lua (function(x) return x+1 end)(9)
Erlang (fun(X) -> X+1 end)(9)
Haskell (\x -> x+1)(9)
@cpressey
cpressey / Some Notes on Software Preservation.md
Last active March 24, 2020 12:58
Some Notes on Software Preservation
@cpressey
cpressey / Programming Language Feature Desiderata.md
Last active December 3, 2023 14:55
Programming Language Feature Desiderata