packages feed

language-dickinson-1.3.0.3: test/data/lambda.rename

Dickinson
  { modImports = []
  , modDefs =
    [ Define
      { declAnn = ()
      , defName = Name
        { name = "greeter" :| []
        , unique = Unique
          { unUnique = 5 }
        , loc = ()
        }
      , defExpr = Lambda
        { exprAnn = ()
        , lambdaVar = Name
          { name = "name" :| []
          , unique = Unique
            { unUnique = 7 }
          , loc = ()
          }
        , lambdaTy = TyText ()
        , lambdaExpr = Interp
          { exprAnn = ()
          , exprInterp =
            [ StrChunk
              { exprAnn = ()
              , chunkText = "Hello, "
              }
            , Var
              { exprAnn = ()
              , exprVar = Name
                { name = "name" :| []
                , unique = Unique
                  { unUnique = 7 }
                , loc = ()
                }
              }
            , StrChunk
              { exprAnn = ()
              , chunkText = "!"
              }
            ]
          }
        }
      }
    , Define
      { declAnn = ()
      , defName = Name
        { name = "main" :| []
        , unique = Unique
          { unUnique = 6 }
        , loc = ()
        }
      , defExpr = Let
        { exprAnn = ()
        , letBinds =
          ( Name
            { name = "boy" :| []
            , unique = Unique
              { unUnique = 8 }
            , loc = ()
            }
          , Choice
            { exprAnn = ()
            , choices =
              ( 0.5
              , Literal
                { exprAnn = ()
                , litText = "tom"
                }
              ) :|
              [
                ( 0.5
                , Literal
                  { exprAnn = ()
                  , litText = "harry"
                  }
                )
              ]
            }
          ) :| []
        , letExpr = Apply
          { exprAnn = ()
          , exprFun = Var
            { exprAnn = ()
            , exprVar = Name
              { name = "greeter" :| []
              , unique = Unique
                { unUnique = 5 }
              , loc = ()
              }
            }
          , exprArg = Var
            { exprAnn = ()
            , exprVar = Name
              { name = "boy" :| []
              , unique = Unique
                { unUnique = 8 }
              , loc = ()
              }
            }
          }
        }
      }
    ]
  }