Skip to content

Instantly share code, notes, and snippets.

View leobm's full-sized avatar

Felix Wittmann leobm

  • Hamburg, Germany
View GitHub Profile
@leobm
leobm / main.gleam
Last active November 3, 2023 11:35
import writer
import string_writer
pub fn main() {
string_writer.create()
|> writer.write("Text1")
|> writer.write("Text2")
|> string_writer.print()
}
@leobm
leobm / my_app.ex
Created January 4, 2023 21:35 — forked from alanpeabody/my_app.ex
Websockets in Elixir with Cowboy and Plug
defmodule MyApp do
use Application
def start(_type, _args) do
import Supervisor.Spec, warn: false
children = [
Plug.Adapters.Cowboy.child_spec(:http, MyApp.Router, [], [
dispatch: dispatch
])
@leobm
leobm / ruby-fmt.clj
Created December 19, 2022 01:44 — forked from fogus/ruby-fmt.clj
Ruby-like string interpolation in Clojure
; Ruby has an awesome feature -- string interpolation. Read about it on the internet.
; On the other hand, Clojure only has cumbersome Java string formatting, which can not be
; used without pain after you've tried Ruby.
; So here's this simple macro that basically allows you to do most things you could do
; with Ruby string interpolation in Clojure.
(ns eis.stuff
(:require [clojure.string]))
@leobm
leobm / youtube_comments_deleter.js
Last active July 29, 2021 10:33
Delete youtube comments activity
// ==UserScript==
// @name Delete youtube comments activity
// @version 1
// @grant none
// @include https://myactivity.google.com/page*
// ==/UserScript==
const DELETE_MAX_ENTRIES_AFTER_PAGE_RELOAD = 1;
(function(d) {
module Main where
import Prelude
import Control.Monad.Reader (Reader, runReader, ReaderT(..), runReaderT, ask, class MonadAsk)
import Effect (Effect)
import Effect.Class (class MonadEffect, liftEffect)
import Effect.Console (log)
---------------------------------------------------------
@leobm
leobm / generic-deriving.purs
Created December 14, 2020 13:41 — forked from dlants/generic-deriving.purs
Generic deriving with purescript
-- an example of how to derive a show instance for a Maybe type
-- not totally sure why `derive instance showMyMaybe :: (Show a) => Show (MyMaybe a)` errors with...
-- error: CannotDerive :
-- Cannot derive a type class instance for Data.Show.Show (MyMaybe a) since instances of this type class are not derivable.
module Main where
import Prelude
import Control.Monad.Eff (Eff)
import Control.Monad.Eff.Console (CONSOLE, log)
@leobm
leobm / json.hs
Created December 14, 2020 13:32 — forked from fero23/json.hs
JSON Parser with Haskell's Parsec
import Text.ParserCombinators.Parsec
import Data.List
type Args = [String]
type Body = [String]
type Label = String
data JSONProp = JSONProp Label JSON deriving Show
data JSON = JSONObject [JSONProp]
| JSONNumber Double
@leobm
leobm / JSONParser.hs
Created December 14, 2020 13:31 — forked from zearen/JSONParser.hs
A simple haskell demonstation showing parsing JSON with Parsec
{-
Zachary Weaver <zaw6@pitt.edu>
JSONParser.hs
Version 0.1.1
A simple example of parsing JSON with Parsec in haskell. Note that
since the primary point of this excersize is demonstration,
Text.Parsec.Token was avoided to expose more of the grammar. Also,
complicated optimizations and shorcuts were avoided (mostly).
@leobm
leobm / RAF.purs
Created December 5, 2020 19:02 — forked from garyb/RAF.purs
requestAnimationFrame looping subscription in Halogen 5
module RAF where
import Prelude
import Data.Foldable (traverse_)
import Data.Maybe (Maybe(..))
import Effect.Aff.Class (class MonadAff)
import Effect.Ref as Ref
import Halogen as H
import Halogen.HTML as HH
@leobm
leobm / melon.bas
Created October 24, 2020 14:39
Locomotive Basic, Amstrad CPC, Melon slice
100 MODE 1
110 ORIGIN 320,200
120 GREEN=9:BGREEN=18:BRED=6:BLACK=0
130 INK 1,GREEN:INK 2,BGREEN:INK 3,BRED:INK 4,0
140 DEG
150 SW=60:EW=240:ST=10
160 R=190:FC=1
170 GOSUB 300
180 R=175:FC=2
190 GOSUB 300