gitextract_w18apfhd/ ├── .appveyor.yml ├── .circleci/ │ └── config.yml ├── .codecov.yml ├── .dir-locals.el ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── bug_report.md │ ├── dependabot.yml │ └── workflows/ │ ├── cabal-install.yml │ ├── ci.yml │ ├── nix-build.yml │ ├── pre-job.yml │ ├── sdist.yml │ └── stack.yml ├── .gitignore ├── .hlint.yaml ├── .readthedocs.yaml ├── .stylish-haskell.yaml ├── .travis.yml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── cabal.project ├── default.nix ├── doc/ │ ├── LICENSE │ ├── Makefile │ ├── Setup.hs │ ├── conf.py │ ├── contents/ │ │ ├── building-package.rst │ │ ├── finkel-executable.rst │ │ ├── install.rst │ │ ├── language-syntax.rst │ │ └── macros.rst │ ├── doc.cabal │ ├── include/ │ │ ├── building-package/ │ │ │ ├── my-first-package/ │ │ │ │ ├── Setup.hs │ │ │ │ ├── my-first-package.cabal │ │ │ │ ├── package.yaml │ │ │ │ ├── src/ │ │ │ │ │ └── MyFirstPackage.hs │ │ │ │ ├── stack.git.yaml │ │ │ │ └── stack.template.yaml │ │ │ ├── my-new-package/ │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── Setup.hs │ │ │ │ ├── app/ │ │ │ │ │ └── Main.hs │ │ │ │ ├── my-new-package.cabal │ │ │ │ ├── src/ │ │ │ │ │ └── Lib.hs │ │ │ │ ├── stack.yaml │ │ │ │ └── test/ │ │ │ │ └── Spec.hs │ │ │ └── my-second-package/ │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── Setup.hs │ │ │ ├── app/ │ │ │ │ └── Main.hs │ │ │ ├── my-second-package.cabal │ │ │ ├── src/ │ │ │ │ ├── FnkCodes.hs │ │ │ │ ├── HsCodes.hs │ │ │ │ └── Lib.hs │ │ │ └── test/ │ │ │ ├── FactorialTest.hs │ │ │ └── Spec.hs │ │ ├── finkel-executable/ │ │ │ ├── finkel-help-make.console │ │ │ ├── hello-prof.console │ │ │ ├── hello.console │ │ │ ├── hello.hs │ │ │ └── hello904.console │ │ ├── language-syntax/ │ │ │ ├── decl/ │ │ │ │ ├── bind-pat.fnk │ │ │ │ ├── bind-pat.hs │ │ │ │ ├── bind-simpl.fnk │ │ │ │ ├── bind-simpl.hs │ │ │ │ ├── bind-where.fnk │ │ │ │ ├── bind-where.hs │ │ │ │ ├── class.fnk │ │ │ │ ├── class.hs │ │ │ │ ├── data-d1.fnk │ │ │ │ ├── data-d1.hs │ │ │ │ ├── data-d2.fnk │ │ │ │ ├── data-d2.hs │ │ │ │ ├── default.fnk │ │ │ │ ├── default.hs │ │ │ │ ├── fixity.fnk │ │ │ │ ├── fixity.hs │ │ │ │ ├── instance.fnk │ │ │ │ ├── instance.hs │ │ │ │ ├── newtype.fnk │ │ │ │ ├── newtype.hs │ │ │ │ ├── tysig-constraints.fnk │ │ │ │ ├── tysig-constraints.hs │ │ │ │ ├── tysig-many.fnk │ │ │ │ ├── tysig-many.hs │ │ │ │ ├── tysig-one.fnk │ │ │ │ ├── tysig-one.hs │ │ │ │ ├── tysym.fnk │ │ │ │ └── tysym.hs │ │ │ ├── expr/ │ │ │ │ ├── block-comment.fnk │ │ │ │ ├── block-comment.hs │ │ │ │ ├── case.fnk │ │ │ │ ├── case.hs │ │ │ │ ├── char-a.fnk │ │ │ │ ├── char-a.hs │ │ │ │ ├── char-escape.fnk │ │ │ │ ├── char-escape.hs │ │ │ │ ├── char-ncode.fnk │ │ │ │ ├── char-ncode.hs │ │ │ │ ├── char-special.fnk │ │ │ │ ├── char-special.hs │ │ │ │ ├── discard-prefix.fnk │ │ │ │ ├── discard-prefix.hs │ │ │ │ ├── do.fnk │ │ │ │ ├── do.hs │ │ │ │ ├── fieldlabels.fnk │ │ │ │ ├── fieldlabels.hs │ │ │ │ ├── funapp-pars.fnk │ │ │ │ ├── funapp-pars.hs │ │ │ │ ├── funapp.fnk │ │ │ │ ├── funapp.hs │ │ │ │ ├── guard.fnk │ │ │ │ ├── guard.hs │ │ │ │ ├── if.fnk │ │ │ │ ├── if.hs │ │ │ │ ├── lambda.fnk │ │ │ │ ├── lambda.hs │ │ │ │ ├── let.fnk │ │ │ │ ├── let.hs │ │ │ │ ├── line-comment.fnk │ │ │ │ ├── line-comment.hs │ │ │ │ ├── list-comp.fnk │ │ │ │ ├── list-comp.hs │ │ │ │ ├── list-const.fnk │ │ │ │ ├── list-const.hs │ │ │ │ ├── list-range.fnk │ │ │ │ ├── list-range.hs │ │ │ │ ├── map-mul2.fnk │ │ │ │ ├── map-mul2.hs │ │ │ │ ├── map-unary.fnk │ │ │ │ ├── map-unary.hs │ │ │ │ ├── muladd.fnk │ │ │ │ ├── muladd.hs │ │ │ │ ├── numeric.fnk │ │ │ │ ├── numeric.hs │ │ │ │ ├── opexp-add.fnk │ │ │ │ ├── opexp-add.hs │ │ │ │ ├── opexp-app.fnk │ │ │ │ ├── opexp-app.hs │ │ │ │ ├── pat-as.fnk │ │ │ │ ├── pat-as.hs │ │ │ │ ├── pat-irf.fnk │ │ │ │ ├── pat-irf.hs │ │ │ │ ├── pat-maybe.fnk │ │ │ │ ├── pat-maybe.hs │ │ │ │ ├── pat-opexp.fnk │ │ │ │ ├── pat-opexp.hs │ │ │ │ ├── sige.fnk │ │ │ │ ├── sige.hs │ │ │ │ ├── string.fnk │ │ │ │ ├── string.hs │ │ │ │ ├── tup2.fnk │ │ │ │ ├── tup2.hs │ │ │ │ ├── tup5.fnk │ │ │ │ ├── tup5.hs │ │ │ │ ├── tupfn.fnk │ │ │ │ ├── tupfn.hs │ │ │ │ ├── unit.fnk │ │ │ │ ├── unit.hs │ │ │ │ ├── varid.fnk │ │ │ │ └── varid.hs │ │ │ ├── ffi/ │ │ │ │ ├── export.fnk │ │ │ │ ├── export.hs │ │ │ │ ├── import.fnk │ │ │ │ └── import.hs │ │ │ ├── import/ │ │ │ │ ├── altogether.fnk │ │ │ │ ├── altogether.hs │ │ │ │ ├── entity-list.fnk │ │ │ │ ├── entity-list.hs │ │ │ │ ├── hiding.fnk │ │ │ │ ├── hiding.hs │ │ │ │ ├── qualified-as.fnk │ │ │ │ ├── qualified-as.hs │ │ │ │ ├── simpl.fnk │ │ │ │ └── simpl.hs │ │ │ └── module/ │ │ │ ├── export-list.fnk │ │ │ ├── export-list.hs │ │ │ ├── simpl.fnk │ │ │ └── simpl.hs │ │ └── macros/ │ │ ├── RequireMe.fnk │ │ ├── arglist.console │ │ ├── arglist.fnk │ │ ├── begin.console │ │ ├── begin.fnk │ │ ├── eval-when-compile.console │ │ ├── eval-when-compile.fnk │ │ ├── eval-when.console │ │ ├── eval-when.fnk │ │ ├── fib-macro.console │ │ ├── fib-macro.fnk │ │ ├── macrolet.console │ │ ├── macrolet.fnk │ │ ├── quasiquote.console │ │ ├── quasiquote.fnk │ │ ├── quasiquote904.console │ │ ├── quote.console │ │ ├── quote.fnk │ │ ├── raw-require.console │ │ ├── raw-require.fnk │ │ ├── require.console │ │ ├── require.fnk │ │ ├── unquote-splice.console │ │ ├── unquote-splice.fnk │ │ ├── unquote.console │ │ └── unquote.fnk │ ├── index.rst │ ├── make.bat │ ├── requirements.txt │ └── test/ │ ├── Doc/ │ │ ├── BuildingPackage.hs │ │ ├── FinkelExecutable.hs │ │ ├── LanguageSyntax.hs │ │ ├── Macros.hs │ │ └── TestAux.hs │ ├── Doc.hs │ └── Spec.hs ├── finkel/ │ ├── CHANGELOG.md │ ├── LICENSE │ ├── Main.hs │ ├── README.md │ ├── Setup.hs │ └── finkel.cabal ├── finkel-core/ │ ├── LICENSE │ ├── README.md │ ├── Setup.hs │ ├── finkel-core.cabal │ ├── src/ │ │ └── Finkel/ │ │ ├── Core/ │ │ │ ├── Functions.hs │ │ │ ├── Internal/ │ │ │ │ ├── Ghc/ │ │ │ │ │ ├── Compat.hs │ │ │ │ │ └── Version.hs │ │ │ │ ├── Ghc.hs │ │ │ │ ├── Stage0.hs │ │ │ │ ├── Stage1.hs │ │ │ │ └── Stage2.hs │ │ │ ├── Internal.hs │ │ │ └── Plugin.hs │ │ ├── Core.hs │ │ └── Prelude.hs │ └── test/ │ ├── CoreTest.hs │ ├── FunctionTest.hs │ ├── Orphan.hs │ ├── PluginTest.hs │ ├── Spec.hs │ ├── TestAux.hs │ └── data/ │ └── plugin/ │ ├── ImportMe.hs │ └── c01.hs ├── finkel-kernel/ │ ├── LICENSE │ ├── README.md │ ├── Setup.hs │ ├── exec/ │ │ ├── fnkc.hs │ │ └── profile.hs │ ├── finkel-kernel.cabal │ ├── include/ │ │ ├── ghc_modules.h │ │ └── hooks.c │ ├── src/ │ │ └── Language/ │ │ ├── Finkel/ │ │ │ ├── Builder.hs │ │ │ ├── Data/ │ │ │ │ ├── FastString.hs │ │ │ │ ├── Fractional.hs │ │ │ │ └── SourceText.hs │ │ │ ├── Emit.hs │ │ │ ├── Error.hs │ │ │ ├── Eval.hs │ │ │ ├── Exception.hs │ │ │ ├── Expand.hs │ │ │ ├── Fnk.hs │ │ │ ├── Form.hs │ │ │ ├── Homoiconic.hs │ │ │ ├── Hooks.hs │ │ │ ├── Lexer.x │ │ │ ├── Main.hs │ │ │ ├── Make/ │ │ │ │ ├── Cache.hs │ │ │ │ ├── Recompile.hs │ │ │ │ ├── Session.hs │ │ │ │ ├── Summary.hs │ │ │ │ ├── TargetSource.hs │ │ │ │ └── Trace.hs │ │ │ ├── Make.hs │ │ │ ├── Options.hs │ │ │ ├── ParsedResult.hs │ │ │ ├── Plugin.hs │ │ │ ├── Preprocess.hs │ │ │ ├── Reader.y │ │ │ ├── SpecialForms.hs │ │ │ ├── Syntax/ │ │ │ │ ├── Extension.hs │ │ │ │ ├── HBind.hs │ │ │ │ ├── HDecl.hs │ │ │ │ ├── HExpr.hs │ │ │ │ ├── HImpExp.hs │ │ │ │ ├── HPat.hs │ │ │ │ ├── HType.hs │ │ │ │ ├── Location.hs │ │ │ │ └── Utils.hs │ │ │ └── Syntax.y │ │ └── Finkel.hs │ └── test/ │ ├── EmitTest.hs │ ├── EvalTest.hs │ ├── ExceptionTest.hs │ ├── FnkTest.hs │ ├── FormTest.hs │ ├── Main.hs │ ├── MainTest.hs │ ├── MakeTest.hs │ ├── Orphan.hs │ ├── PluginTest.hs │ ├── PreprocessTest.hs │ ├── SyntaxTest.hs │ ├── TestAux.hs │ └── data/ │ ├── eval/ │ │ ├── 0001-simple.fnk │ │ ├── 0002-shadowing-macro.fnk │ │ ├── 0003-expand1.fnk │ │ └── 0004-unquote-unquote-splice.fnk │ ├── exception/ │ │ ├── 0001-invalid-unquote-splice.hs │ │ ├── 0002-invalid-string-literal.hs │ │ └── 0003-malformed-qq.hs │ ├── main/ │ │ ├── MyMain.hs │ │ ├── m001.hs │ │ ├── m002.hs │ │ └── m003.c │ ├── make/ │ │ ├── E01.hs │ │ ├── E02.hs │ │ ├── M1.hs │ │ ├── M2.hs │ │ ├── M3.hs │ │ ├── M4/ │ │ │ ├── A.hs │ │ │ └── B.hs │ │ ├── M4.hs │ │ ├── M5.hs │ │ ├── M6/ │ │ │ ├── A.hs │ │ │ └── B.hs │ │ ├── P1.hs │ │ ├── P2.hs │ │ ├── P3.hs │ │ ├── R01.hs.1 │ │ ├── R01.hs.2 │ │ ├── R02.hs │ │ ├── R03.hs │ │ ├── R04.hs │ │ ├── R05.hs │ │ ├── R05a.hs │ │ ├── R06.hs │ │ ├── R06a.hs │ │ ├── R07.hs │ │ ├── R07a.hs │ │ ├── R07b.hs │ │ ├── R08.hs │ │ ├── R08a.hs │ │ ├── R08b.hs │ │ ├── R09.hs │ │ ├── R09a.hs │ │ ├── R09b.hs │ │ ├── R10.hs │ │ ├── R10a.hs │ │ ├── R10b.hs │ │ ├── R11.hs │ │ ├── R11a.hs │ │ ├── R11b.hs │ │ ├── cbits1.c │ │ ├── cbits2.c │ │ ├── cbits3.c │ │ ├── main1.hs │ │ ├── main2.hs │ │ ├── main3.hs │ │ ├── main4.hs │ │ ├── main5.hs │ │ ├── main6.hs │ │ ├── main7.hs │ │ ├── main8.hs │ │ └── main9.hs │ ├── plugin/ │ │ ├── M01.hs │ │ ├── M02.hs │ │ ├── M03.hs │ │ ├── M04.hs │ │ ├── M04b.hs │ │ ├── p01.hs │ │ ├── p02.hs │ │ ├── p03.hs │ │ ├── p04.hs │ │ ├── p05.hs │ │ ├── p06.hs │ │ ├── p07.hs │ │ ├── p08.hs │ │ ├── p09.hs │ │ ├── p10.hs │ │ └── p11.hs │ ├── preprocess/ │ │ ├── fnk01.hs │ │ ├── fnk02.hs │ │ ├── fnk03.hs │ │ ├── fnk04.hs │ │ ├── fnk05.hs │ │ ├── fnk06.hs │ │ ├── fnk11.hs │ │ ├── fnk12.hs │ │ ├── fnk13.hs │ │ ├── fnk14.hs │ │ ├── fnk15.hs │ │ ├── hs01.hs │ │ └── hs02.hs │ └── syntax/ │ ├── 0001-hello.hs │ ├── 0002-lexical.hs │ ├── 0003-expressions-1.hs │ ├── 0003-expressions-2.hs │ ├── 0003-expressions-3.hs │ ├── 0004-decls.hs │ ├── 0005-modules-01.hs │ ├── 0005-modules-02.hs │ ├── 0005-modules-03.hs │ ├── 0005-modules-04.hs │ ├── 0005-modules-05.hs │ ├── 0008-ffi.hs │ ├── 0012-pragmas.hs │ ├── 1000-comment.hs │ ├── 1001-quote.hs │ ├── 1002-macro.hs │ ├── 1003-eval-when-compile.hs │ ├── 1004-doccomment-01.hs │ ├── 1004-doccomment-02.hs │ ├── 1004-doccomment-03.hs │ ├── 1005-begin.hs │ ├── 2001-unpack.hs │ ├── 2002-bang.hs │ ├── 2003-derive.hs │ ├── 2004-overloaded.hs │ ├── 2005-gadts-01.hs │ ├── 2005-gadts-02.hs │ ├── 2006-existential.hs │ ├── 2007-rankn.hs │ ├── 2008-options.hs │ ├── 2009-flexible.hs │ ├── 2010-kindsig.hs │ ├── 2011-scoped.hs │ ├── 2012-typeop.hs │ ├── 2013-undecidable.hs │ ├── 2014-noprelude.hs │ ├── 2015-typefam.hs │ ├── 2016-datakinds.hs │ ├── 2017-polykinds.hs │ ├── 2018-typeapp.hs │ ├── 2019-overlabel.hs │ ├── 2020-emptyderiv.hs │ ├── 2021-dfltsig.hs │ ├── 2022-drvstrat.hs │ ├── 2023-standalone.hs │ ├── 2024-derivingvia.hs │ ├── 2025-namedfieldpuns.hs │ ├── 2026-recordwildcards.hs │ ├── 2027-emptycase-1.hs │ ├── 2027-emptycase-2.hs │ ├── 2028-standalonekind.hs │ └── 2029-impredicative.hs ├── finkel-setup/ │ ├── LICENSE │ ├── README.md │ ├── Setup.hs │ ├── finkel-setup.cabal │ ├── src/ │ │ └── Distribution/ │ │ └── Simple/ │ │ └── Finkel.hs │ └── test/ │ ├── Main.hs │ └── data/ │ ├── p01/ │ │ ├── LICENSE │ │ ├── Setup.hs │ │ ├── exec/ │ │ │ └── p01.hs │ │ ├── p01.cabal │ │ ├── src/ │ │ │ └── P01/ │ │ │ ├── A.fnk │ │ │ ├── B.fnk │ │ │ ├── C.fnk │ │ │ ├── D.hs │ │ │ ├── E.hs │ │ │ ├── F.fnk │ │ │ ├── G1.fnk │ │ │ ├── G2.fnk │ │ │ ├── H.fnk │ │ │ ├── I.fnk │ │ │ └── J.fnk │ │ └── test/ │ │ ├── Spec.hs │ │ └── TestAll.fnk │ └── p02/ │ ├── CHANGELOG.md │ ├── LICENSE │ ├── Setup.hs │ ├── app/ │ │ └── Main.hs │ ├── p02.cabal │ ├── src/ │ │ └── MyLib.hs │ └── test/ │ └── Main.hs ├── finkel-tool/ │ ├── LICENSE │ ├── README.md │ ├── Setup.hs │ ├── finkel-tool.cabal │ ├── finkel.hsfiles │ ├── src/ │ │ └── Finkel/ │ │ └── Tool/ │ │ ├── Command/ │ │ │ ├── Eval.hs │ │ │ ├── Help.hs │ │ │ ├── Make.hs │ │ │ ├── Repl.hs │ │ │ ├── Run.hs │ │ │ ├── Sdist.hs │ │ │ └── Version.hs │ │ ├── Command.hs │ │ ├── Internal/ │ │ │ ├── CLI.hs │ │ │ ├── Commit.hs │ │ │ ├── Compat.hs │ │ │ ├── Eval.hs │ │ │ ├── Exception.hs │ │ │ ├── IO.hs │ │ │ ├── Listen.hs │ │ │ ├── Loop.hs │ │ │ ├── Macro/ │ │ │ │ ├── Ghc.hs │ │ │ │ └── Repl.hs │ │ │ └── Types.hs │ │ └── Main.hs │ └── test/ │ ├── CLITest.hs │ ├── GhcTest.hs │ ├── MainTest.hs │ ├── ReplMacroTest.hs │ ├── ReplTest.hs │ ├── Spec.hs │ ├── TestAux.hs │ └── data/ │ ├── Err001.fnk │ ├── LoadMe.hs │ ├── RunMeToo.hs │ ├── input01.txt │ ├── m01.hs │ ├── p02/ │ │ ├── LICENSE │ │ ├── README.md │ │ ├── Setup.hs │ │ ├── app/ │ │ │ └── Main.hs │ │ ├── p02.cabal │ │ ├── src/ │ │ │ └── Lib.fnk │ │ ├── stack.yaml │ │ └── test/ │ │ └── Spec.hs │ ├── print-int.hs │ ├── print-load-me.hs │ ├── run-me.hs │ └── sleep-for-while.fnk ├── fkc/ │ ├── LICENSE │ ├── Main.hs │ ├── README.md │ ├── Setup.hs │ └── fkc.cabal ├── fnkpp/ │ ├── LICENSE │ ├── Main.hs │ ├── README.md │ └── fnkpp.cabal ├── nix/ │ ├── docker.nix │ └── finkel-packages.nix ├── scripts/ │ └── travis.sh ├── shell.nix └── stack.yaml