summaryrefslogtreecommitdiff
path: root/src/Language.hs
diff options
context:
space:
mode:
authorTom Smeding <tom@tomsmeding.com>2024-10-27 15:04:47 +0100
committerTom Smeding <tom@tomsmeding.com>2024-10-27 15:04:47 +0100
commit991dacbec1a84400ab3412811f246b1fc58b0938 (patch)
treeb3ef681b83c2a40ba36c5f30dbae3c181e280d44 /src/Language.hs
parent8cbc20cb1759a7a8c0e11f7da91da79cedf3d2d6 (diff)
Better inline syntax for Language
Diffstat (limited to 'src/Language.hs')
-rw-r--r--src/Language.hs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Language.hs b/src/Language.hs
index 3a4a36c..b61a497 100644
--- a/src/Language.hs
+++ b/src/Language.hs
@@ -26,6 +26,12 @@ body = NBody
lambda :: forall a name env env' t. Var name a -> NFun ('(name, a) : env) env' t -> NFun env env' t
lambda = NLam
+inline :: NFun '[] params t -> SList (NExpr env) (UnName params) -> NExpr env t
+inline = inlineNFun
+
+(.$) :: SList f list -> f a -> SList f (a : list)
+(.$) = flip SCons
+
let_ :: Var name a -> NExpr env a -> NExpr ('(name, a) : env) t -> NExpr env t
let_ = NELet