Permalink
Cannot retrieve contributors at this time
Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign up
Switch branches/tags
POPL
T1045
T1089
T1113
T1137
T1139
T1146
T1173
T1175
T1180
T1186
T1189
T1190
T1192
T1257
T1302
T1336
adt
annotations
atondwal-patch-1
bags
bind-rule
blog
circle2
circlefix
conjoin-scopes
develop-independent-bare
develop-quasiquoters
develop
developgraph
disable-lhi
double-lits
ebinds
eliminate-all
eliminate-errorstar
embedEmb
equational
external-desugar
fix-import-paths
fix_T1267
fixhole
gadt
ghc-7.10-final
ghc-7.10
ghc-8
ghc-8.0
ghc-8.2
ghc-8.2.2
ghc-no-code
ghc-update
ghc-version-check
gradual
hex
hpack
icfp17-aec-newest
icfp17-aec
icfp17aec
import-lifted
improve-plot-bm
include-nonsense
independent-bare
instance-parse
jp-strict
json
lhi
liquidhaskell-0.6
listP
maps
master
neq
new-combinators
newgraphs
no-prop
old-elim
parse-error-location
parse-unparse
pattern-inline
phadej-ghc-8.4
pldi17
ple-opt
popl17
popl18
poplbench
qual-templates
quasiquoters
reflect-datacons
reflectionHaskellFunInRefs
remove-zip3-from-split
remove_applied_check
rename-auto-instance
rename-prefix
rtalias-quals
signal
snapshot
splitEApp2
stlc
structural_termination
symbol-intern
tachio-tests
term_exp
tidy-elim
trifecta
tweak-blog-post
ucsd-230
verified_classes
winot-fixes
Nothing to show
v0.8.2.2
pldi14
liquidhaskell-0.8.2.2
liquidhaskell-0.8.0.1
liquidhaskell-0.6.0.1
liquidhaskell-0.6.0.0
liquidhaskell-0.5.0.1
liquidhaskell-0.5.0.0
liquidhaskell-0.4.1.1
liquidhaskell-0.4.1.0
liquidhaskell-0.4.0.1
liquidhaskell-0.4.0.0
liquidhaskell-0.3.1.0
liquidhaskell-0.3.0.0
liquidhaskell-0.2.1.0
liquidhaskell-0.2.0.0
liquidhaskell-0.1.0.0
icfp14
8.2.1-final
Nothing to show
Find file
Copy path
Fetching contributors…
| {-# LANGUAGE DataKinds #-} -- Type level straings | |
| {-# LANGUAGE TypeOperators #-} | |
| {-# LANGUAGE KindSignatures #-} | |
| module Foo where | |
| import GHC.TypeLits | |
| {-@ foo :: x:Int -> {v:Int | v > x } @-} | |
| foo :: x ::: Int -> (v ::: Int || v > x) | |
| bar :: xs ::: [a] -> (v ::: Int || v == length xs) | |
| bar xs = length xs | |
| foo x = x + 1 | |
| infixr 7 ::: | |
| infixr 6 || | |
| type x ::: t = t | |
| type t || p = t | |
| type x > y = Bool | |
| type x == y = Bool | |
| -- type (x :: Symbol) > (y :: Symbol) = Bool | |
Copy lines Copy permalink - View git blame
- Open new issue