Skip to content

Instantly share code, notes, and snippets.

-- unleash the zoo
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE TypeInType #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE DefaultSignatures #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE TypeFamilies #-}
module Foo where
import GHC.Types
import Control.Monad.Reader
import Control.Monad.State
import Data.Functor.Identity
import qualified Control.Concurrent.Async as A
(\let.
let (\n s z. s (n s z)) \succ.
let (\n s z. n (\applySuccNMinus1Times succFun. succFun (applySuccNMinus1Times s)) (\_. z) (\x. x)) \pred.
let (\n m. m succ n) \add.
let (\n m s z. m (n s) z) \mult.
let (\n m. m pred n) \sub.
let (\t f. t) \true.
let (\t f. f) \false.
let (\b ift iff. b _then ift _else iff) \if.
let (\x. x) \then.
@Tarmean
Tarmean / 2
Created February 2, 2019 20:59
Abgabesystem Informatik <https://auas.cs.uni-duesseldorf.de/>
* Startseite <https://auas.cs.uni-duesseldorf.de/student/index>
* Vorlesungsverzeichnis <https://auas.cs.uni-duesseldorf.de/course/list>
* Profil <https://auas.cs.uni-duesseldorf.de/profile/index>
* Logout <https://auas.cs.uni-duesseldorf.de/student/logout>
Abgabe ansehen
{-# Language OverloadedStrings #-}
{-# Language FlexibleContexts #-}
module Foo where
import Control.Monad.Cont
import qualified Control.Monad.State as S
import Text.Megaparsec
import Text.Megaparsec.Char
import Data.Text (Text, pack)
import Data.Void
import Control.Applicative
data Predicate = Predicate Pred [Argument]
data Argument = Qualified Qualified | ProperNoun ProperNoun
data Qualified = Qual Quant Var NounClass
data Quant = Exists | All | The | None
data ProperNoun = PN String
data NounClass = Adjective Adj NounClass | NC String (Maybe RelativeClause)
data RelativeClause = Predicate
type O a = NonDetT (Cont Expr) a
betaC(L, R) :- var(L), !, L=R.
betaC(app(X, Y), R) :- !, betaC(X, XX), betaC(Y, YY), app(XX,YY,R).
/* for head normal form: betaC(lam(X, Y), R) :- !, R = lam(X, Y).*/
betaC(lam(X, Y), R) :- !, betaC(Y, YY), R = lam(X, YY).
betaC(L, R) :- L =.. [H|A], maplist(betaC, A, AA), R =.. [H|AA].
app(I, Y, R) :- nonvar(I), I = lam(X, F), !, alphaConvert(Y, X), betaC(F, R).
app(X, Y, app(X,Y)).
WORD	PoS	PoSGold
Es	N	X
war	V	V
ein	X	X
klarer	X	X
,	X	X
kalter	X	X
Tag	N	N
Tag	N	X

im X X

import Text.Printf
test :: IO ()
test = do
return ()
hyper possibleWins actualWins actualDraws = (winPerms * lossPerms) / totalPerms
where
winPerms = binomial possibleWins actualWins
function! CsvHack#SetupScrolllock()
if (exists("b:csvhack_scrolllock_win"))
return
endif
let b:csvhack_scrolllock_win = v:true
setlocal scrollbind
setlocal scrollopt=hor
setlocal nowrap
split
wincmd k