diff options
| author | Tom Smeding <tom@tomsmeding.com> | 2024-10-27 15:04:47 +0100 |
|---|---|---|
| committer | Tom Smeding <tom@tomsmeding.com> | 2024-10-27 15:04:47 +0100 |
| commit | 991dacbec1a84400ab3412811f246b1fc58b0938 (patch) | |
| tree | b3ef681b83c2a40ba36c5f30dbae3c181e280d44 /src/Language.hs | |
| parent | 8cbc20cb1759a7a8c0e11f7da91da79cedf3d2d6 (diff) | |
Better inline syntax for Language
Diffstat (limited to 'src/Language.hs')
| -rw-r--r-- | src/Language.hs | 6 |
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 |
