Skip to content

Instantly share code, notes, and snippets.

View plumenator's full-sized avatar
👋
Getting my Open Source on!

Karthik Ravikanti plumenator

👋
Getting my Open Source on!
View GitHub Profile
Interested in learning eLisp for Emacs, ever thought you should?
I wanted to learn eLisp but there are no decent beginners' book - so I decided to write one - and by decent I mean super-basic starting assuming you know nothing at all.
It is my 'official' side-project; something to work on when I am bored or blocked in my main work.
You can see how much progress I have made here:
http://learn-elisp-for-emacs.org/
The book will get written quicker if other people muck in.
@plumenator
plumenator / Keybase.md
Last active May 10, 2019 04:07
Keybase

Keybase proof

I hereby claim:

  • I am plumenator on github.
  • I am plumenator (https://keybase.io/plumenator) on keybase.
  • I have a public key ASBGXIYUW9_di31zOdpm7lJ8CN_fVWwbr6JtD9qfnnMiVQo

To claim this, I am signing this object:

@plumenator
plumenator / typing.md
Created June 12, 2020 15:22 — forked from chrisdone/typing.md
Typing Haskell in Haskell

Typing Haskell in Haskell

MARK P. JONES

Pacific Software Research Center

Department of Computer Science and Engineering

Oregon Graduate Institute of Science and Technology

import scala.util.{Try, Success, Failure}
def f(s: String): Try[Int] = Try { s.toInt }
def g(i: Int): Try[Int] = Try { i * 2 }
def unit[T](v: T): Try[T] = Success(v)
//val v = "1"
val v = "bad"
val m = Success(v)
@plumenator
plumenator / fpmax.scala
Created February 1, 2022 13:16 — forked from jdegoes/fpmax.scala
FP to the Max — Code Examples
package fpmax
import scala.util.Try
import scala.io.StdIn.readLine
object App0 {
def main: Unit = {
println("What is your name?")
val name = readLine()
Originally:
https://gist.github.com/7565976a89d5da1511ce
Hi Donald (and Martin),
Thanks for pinging me; it's nice to know Typesafe is keeping tabs on this, and I
appreciate the tone. This is a Yegge-long response, but given that you and
Martin are the two people best-situated to do anything about this, I'd rather
err on the side of giving you too much to think about. I realize I'm being very
critical of something in which you've invested a great deal (both financially
{-# LANGUAGE DeriveFunctor #-}
module Main where
type Algebra f a = f a -> a
type Coalgebra f a = a -> f a
newtype Fix f = In { out :: f (Fix f) }