Skip to content

Instantly share code, notes, and snippets.

@decapo01
decapo01 / StringUtils.hs
Created May 20, 2022 23:36
String conversion typeclasses for the major string types in haskell
{-# LANGUAGE FlexibleInstances #-}
module Common.StringUtils where
import qualified Data.Text as T
import qualified Data.Text.Encoding as En
import qualified Data.Text.Lazy as Lt
import qualified Data.Text.Lazy.Encoding as Len
import qualified Data.ByteString as Bs
import qualified Data.ByteString.Lazy as Lbs
@decapo01
decapo01 / repo_svc_pat_with_cache.sudo
Last active April 29, 2020 01:12
Repository Service Pattern With Cache
//User
User {
id: UserId
username: String
}
//UserDetails
UserDetails {
otherDetails: String
@decapo01
decapo01 / HaskellShowTypeClass.hs
Created October 19, 2019 02:45
Hasell show typeclass
import Data.Text
data MyCaseClass
= MyCaseClass
{ _id :: Int
, name :: Text
}
data MyOtherCaseClass
final case class MyCaseClass(id: Int, name: String)
final case class MyOtherCaseClass(id: Int, name: String)
trait Show[-A]{
def show(a: A): String
}
object Show {
enum Drink { Beer, Koolaid }
enum PersonKind { AdultKind, ChildKind }
type Adult = {
kind : PersonKind.AdultKind
drink : Drink.Beer
profession : string