Cabal revisions of futhark-0.24.3
Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.
revision 1
-cabal-version: 2.4-name: futhark-version: 0.24.3-synopsis: An optimising compiler for a functional, array-oriented language.--description: Futhark is a small programming language designed to be compiled to- efficient parallel code. It is a statically typed, data-parallel,- and purely functional array language in the ML family, and comes- with a heavily optimising ahead-of-time compiler that presently- generates GPU code via CUDA and OpenCL, although the language itself- is hardware-agnostic.- .- For more information, see the website at https://futhark-lang.org- .- For introductionary information about hacking on the- Futhark compiler, see- <https://futhark.readthedocs.io/en/latest/hacking.html the hacking guide>.- Regarding the internal design of the compiler, the following modules make- good starting points:- .- * "Futhark" contains a basic architectural overview of the compiler.- * "Futhark.IR.Syntax" explains the- basic design of the intermediate representation (IR).- * "Futhark.Construct" explains how to write code that- manipulates and creates AST fragments.- .- <<docs/assets/ohyes.png You too can go fast once you rewrite your program in Futhark.>>--category: Futhark-homepage: https://futhark-lang.org-bug-reports: https://github.com/diku-dk/futhark/issues-maintainer: Troels Henriksen athas@sigkill.dk-license: ISC-license-file: LICENSE-build-type: Simple-extra-source-files:--- Cabal's recompilation tracking doesn't work when we use wildcards--- here, so for now we spell out every single file.- rts/c/atomics.h- rts/c/context.h- rts/c/context_prototypes.h- rts/c/backends/c.h- rts/c/backends/cuda.h- rts/c/backends/multicore.h- rts/c/backends/opencl.h- rts/c/lock.h- rts/c/timing.h- rts/c/errors.h- rts/c/free_list.h- rts/c/tuning.h- rts/c/values.h- rts/c/half.h- rts/c/cache.h- rts/c/ispc_util.h- rts/c/scalar.h- rts/c/scalar_f16.h- rts/c/scheduler.h- rts/c/uniform.h- rts/c/util.h- rts/c/server.h- rts/futhark-doc/style.css- rts/javascript/server.js- rts/javascript/values.js- rts/javascript/wrapperclasses.js- rts/python/tuning.py- rts/python/panic.py- rts/python/memory.py- rts/python/server.py- rts/python/values.py- rts/python/opencl.py- rts/python/scalar.py- prelude/functional.fut- prelude/math.fut- prelude/soacs.fut- prelude/zip.fut- prelude/ad.fut- prelude/array.fut- prelude/prelude.fut--- Just enough of the docs to build the manpages.- docs/**/*.rst- docs/Makefile- docs/conf.py- docs/requirements.txt-extra-doc-files:- assets/*.png--source-repository head- type: git- location: https://github.com/diku-dk/futhark--common common- ghc-options: -Wall -Wcompat -Wno-incomplete-uni-patterns -Wredundant-constraints -Wincomplete-record-updates -Wmissing-export-lists -Wunused-packages- default-language: Haskell2010- default-extensions:- OverloadedStrings- -- The following extensions correspond to the GHC2021 language,- -- but we want to remain compatible with GHC 9.0, so we cannot use- -- it just yet.- BangPatterns- BinaryLiterals- ConstrainedClassMethods- ConstraintKinds- DeriveDataTypeable- DeriveFoldable- DeriveFunctor- DeriveGeneric- DeriveLift- DeriveTraversable- DoAndIfThenElse- EmptyCase- EmptyDataDecls- EmptyDataDeriving- ExistentialQuantification- ExplicitForAll- FlexibleContexts- FlexibleInstances- ForeignFunctionInterface- GADTSyntax- GeneralisedNewtypeDeriving- HexFloatLiterals- ImplicitPrelude- ImportQualifiedPost- InstanceSigs- KindSignatures- MonomorphismRestriction- MultiParamTypeClasses- NamedFieldPuns- NamedWildCards- NumericUnderscores- PatternGuards- PolyKinds- PostfixOperators- RankNTypes- RelaxedPolyRec- ScopedTypeVariables- StandaloneDeriving- StandaloneKindSignatures- StarIsType- TraditionalRecordSyntax- TupleSections- TypeApplications- TypeOperators- TypeSynonymInstances--library- import: common- hs-source-dirs: src- exposed-modules:- Futhark- Futhark.Actions- Futhark.AD.Derivatives- Futhark.AD.Fwd- Futhark.AD.Rev- Futhark.AD.Rev.Loop- Futhark.AD.Rev.Hist- Futhark.AD.Rev.Map- Futhark.AD.Rev.Monad- Futhark.AD.Rev.Reduce- Futhark.AD.Rev.Scan- Futhark.AD.Rev.Scatter- Futhark.AD.Rev.SOAC- Futhark.Analysis.AlgSimplify- Futhark.Analysis.Alias- Futhark.Analysis.CallGraph- Futhark.Analysis.DataDependencies- Futhark.Analysis.HORep.MapNest- Futhark.Analysis.HORep.SOAC- Futhark.Analysis.Interference- Futhark.Analysis.LastUse- Futhark.Analysis.MemAlias- Futhark.Analysis.Metrics- Futhark.Analysis.Metrics.Type- Futhark.Analysis.PrimExp- Futhark.Analysis.PrimExp.Convert- Futhark.Analysis.PrimExp.Parse- Futhark.Analysis.PrimExp.Simplify- Futhark.Analysis.SymbolTable- Futhark.Analysis.UsageTable- Futhark.Bench- Futhark.Builder- Futhark.Builder.Class- Futhark.CLI.Autotune- Futhark.CLI.Bench- Futhark.CLI.C- Futhark.CLI.CUDA- Futhark.CLI.Check- Futhark.CLI.Benchcmp- Futhark.CLI.Datacmp- Futhark.CLI.Dataset- Futhark.CLI.Defs- Futhark.CLI.Dev- Futhark.CLI.Doc- Futhark.CLI.Eval- Futhark.CLI.Literate- Futhark.CLI.LSP- Futhark.CLI.Main- Futhark.CLI.Misc- Futhark.CLI.Multicore- Futhark.CLI.MulticoreISPC- Futhark.CLI.MulticoreWASM- Futhark.CLI.OpenCL- Futhark.CLI.Pkg- Futhark.CLI.PyOpenCL- Futhark.CLI.Python- Futhark.CLI.Query- Futhark.CLI.REPL- Futhark.CLI.Run- Futhark.CLI.Test- Futhark.CLI.WASM- Futhark.CodeGen.Backends.CCUDA- Futhark.CodeGen.Backends.CCUDA.Boilerplate- Futhark.CodeGen.Backends.COpenCL- Futhark.CodeGen.Backends.COpenCL.Boilerplate- Futhark.CodeGen.Backends.GenericC- Futhark.CodeGen.Backends.GenericC.CLI- Futhark.CodeGen.Backends.GenericC.Code- Futhark.CodeGen.Backends.GenericC.EntryPoints- Futhark.CodeGen.Backends.GenericC.Fun- Futhark.CodeGen.Backends.GenericC.Monad- Futhark.CodeGen.Backends.GenericC.Options- Futhark.CodeGen.Backends.GenericC.Pretty- Futhark.CodeGen.Backends.GenericC.Server- Futhark.CodeGen.Backends.GenericC.Types- Futhark.CodeGen.Backends.GenericPython- Futhark.CodeGen.Backends.GenericPython.AST- Futhark.CodeGen.Backends.GenericPython.Options- Futhark.CodeGen.Backends.GenericWASM- Futhark.CodeGen.Backends.MulticoreC- Futhark.CodeGen.Backends.MulticoreC.Boilerplate- Futhark.CodeGen.Backends.MulticoreISPC- Futhark.CodeGen.Backends.MulticoreWASM- Futhark.CodeGen.Backends.PyOpenCL- Futhark.CodeGen.Backends.PyOpenCL.Boilerplate- Futhark.CodeGen.Backends.SequentialC- Futhark.CodeGen.Backends.SequentialC.Boilerplate- Futhark.CodeGen.Backends.SequentialPython- Futhark.CodeGen.Backends.SequentialWASM- Futhark.CodeGen.Backends.SimpleRep- Futhark.CodeGen.RTS.C- Futhark.CodeGen.RTS.Python- Futhark.CodeGen.RTS.JavaScript- Futhark.CodeGen.ImpCode- Futhark.CodeGen.ImpCode.GPU- Futhark.CodeGen.ImpCode.Multicore- Futhark.CodeGen.ImpCode.OpenCL- Futhark.CodeGen.ImpCode.Sequential- Futhark.CodeGen.ImpGen- Futhark.CodeGen.ImpGen.CUDA- Futhark.CodeGen.ImpGen.GPU- Futhark.CodeGen.ImpGen.GPU.Base- Futhark.CodeGen.ImpGen.GPU.Group- Futhark.CodeGen.ImpGen.GPU.SegHist- Futhark.CodeGen.ImpGen.GPU.SegMap- Futhark.CodeGen.ImpGen.GPU.SegRed- Futhark.CodeGen.ImpGen.GPU.SegScan- Futhark.CodeGen.ImpGen.GPU.SegScan.SinglePass- Futhark.CodeGen.ImpGen.GPU.SegScan.TwoPass- Futhark.CodeGen.ImpGen.GPU.ToOpenCL- Futhark.CodeGen.ImpGen.GPU.Transpose- Futhark.CodeGen.ImpGen.Multicore- Futhark.CodeGen.ImpGen.Multicore.Base- Futhark.CodeGen.ImpGen.Multicore.SegHist- Futhark.CodeGen.ImpGen.Multicore.SegMap- Futhark.CodeGen.ImpGen.Multicore.SegRed- Futhark.CodeGen.ImpGen.Multicore.SegScan- Futhark.CodeGen.ImpGen.OpenCL- Futhark.CodeGen.ImpGen.Sequential- Futhark.CodeGen.ImpGen.Transpose- Futhark.CodeGen.OpenCL.Heuristics- Futhark.Compiler- Futhark.Compiler.CLI- Futhark.Compiler.Config- Futhark.Compiler.Program- Futhark.Construct- Futhark.Doc.Generator- Futhark.Error- Futhark.FreshNames- Futhark.IR- Futhark.IR.Aliases- Futhark.IR.GPU- Futhark.IR.GPU.Op- Futhark.IR.GPU.Simplify- Futhark.IR.GPU.Sizes- Futhark.IR.GPUMem- Futhark.IR.MC- Futhark.IR.MC.Op- Futhark.IR.MCMem- Futhark.IR.Mem- Futhark.IR.Mem.Interval- Futhark.IR.Mem.IxFun- Futhark.IR.Mem.Simplify- Futhark.IR.Parse- Futhark.IR.Pretty- Futhark.IR.Prop- Futhark.IR.Prop.Aliases- Futhark.IR.Prop.Constants- Futhark.IR.Prop.Names- Futhark.IR.Prop.Patterns- Futhark.IR.Prop.Rearrange- Futhark.IR.Prop.Reshape- Futhark.IR.Prop.Scope- Futhark.IR.Prop.TypeOf- Futhark.IR.Prop.Types- Futhark.IR.Rep- Futhark.IR.Rephrase- Futhark.IR.RetType- Futhark.IR.SOACS- Futhark.IR.SOACS.SOAC- Futhark.IR.SOACS.Simplify- Futhark.IR.SegOp- Futhark.IR.Seq- Futhark.IR.SeqMem- Futhark.IR.Syntax- Futhark.IR.Syntax.Core- Futhark.IR.Traversals- Futhark.IR.TypeCheck- Futhark.Internalise- Futhark.Internalise.AccurateSizes- Futhark.Internalise.Bindings- Futhark.Internalise.Defunctionalise- Futhark.Internalise.Defunctorise- Futhark.Internalise.Entry- Futhark.Internalise.Exps- Futhark.Internalise.Lambdas- Futhark.Internalise.LiftLambdas- Futhark.Internalise.Monad- Futhark.Internalise.Monomorphise- Futhark.Internalise.TypesValues- Futhark.LSP.Compile- Futhark.LSP.Diagnostic- Futhark.LSP.Handlers- Futhark.LSP.Tool- Futhark.LSP.State- Futhark.LSP.PositionMapping- Futhark.MonadFreshNames- Futhark.Optimise.BlkRegTiling- Futhark.Optimise.CSE- Futhark.Optimise.DoubleBuffer- Futhark.Optimise.EntryPointMem- Futhark.Optimise.Fusion- Futhark.Optimise.Fusion.Composing- Futhark.Optimise.Fusion.GraphRep- Futhark.Optimise.Fusion.TryFusion- Futhark.Optimise.GenRedOpt- Futhark.Optimise.HistAccs- Futhark.Optimise.InPlaceLowering- Futhark.Optimise.InPlaceLowering.LowerIntoStm- Futhark.Optimise.InPlaceLowering.SubstituteIndices- Futhark.Optimise.InliningDeadFun- Futhark.Optimise.MemoryBlockMerging- Futhark.Optimise.MemoryBlockMerging.GreedyColoring- Futhark.Optimise.ArrayShortCircuiting- Futhark.Optimise.ArrayShortCircuiting.ArrayCoalescing- Futhark.Optimise.ArrayShortCircuiting.DataStructs- Futhark.Optimise.ArrayShortCircuiting.MemRefAggreg- Futhark.Optimise.ArrayShortCircuiting.TopdownAnalysis- Futhark.Optimise.MergeGPUBodies- Futhark.Optimise.ReduceDeviceSyncs- Futhark.Optimise.ReduceDeviceSyncs.MigrationTable- Futhark.Optimise.ReduceDeviceSyncs.MigrationTable.Graph- Futhark.Optimise.Simplify- Futhark.Optimise.Simplify.Engine- Futhark.Optimise.Simplify.Rep- Futhark.Optimise.Simplify.Rule- Futhark.Optimise.Simplify.Rules- Futhark.Optimise.Simplify.Rules.BasicOp- Futhark.Optimise.Simplify.Rules.ClosedForm- Futhark.Optimise.Simplify.Rules.Index- Futhark.Optimise.Simplify.Rules.Loop- Futhark.Optimise.Simplify.Rules.Match- Futhark.Optimise.Simplify.Rules.Simple- Futhark.Optimise.Sink- Futhark.Optimise.TileLoops- Futhark.Optimise.TileLoops.Shared- Futhark.Optimise.Unstream- Futhark.Pass- Futhark.Pass.AD- Futhark.Pass.ExpandAllocations- Futhark.Pass.ExplicitAllocations- Futhark.Pass.ExplicitAllocations.GPU- Futhark.Pass.ExplicitAllocations.MC- Futhark.Pass.ExplicitAllocations.SegOp- Futhark.Pass.ExplicitAllocations.Seq- Futhark.Pass.ExtractKernels- Futhark.Pass.ExtractKernels.BlockedKernel- Futhark.Pass.ExtractKernels.DistributeNests- Futhark.Pass.ExtractKernels.Distribution- Futhark.Pass.ExtractKernels.ISRWIM- Futhark.Pass.ExtractKernels.Interchange- Futhark.Pass.ExtractKernels.Intragroup- Futhark.Pass.ExtractKernels.StreamKernel- Futhark.Pass.ExtractKernels.ToGPU- Futhark.Pass.ExtractMulticore- Futhark.Pass.FirstOrderTransform- Futhark.Pass.KernelBabysitting- Futhark.Pass.LiftAllocations- Futhark.Pass.LowerAllocations- Futhark.Pass.Simplify- Futhark.Passes- Futhark.Pipeline- Futhark.Pkg.Info- Futhark.Pkg.Solve- Futhark.Pkg.Types- Futhark.Script- Futhark.Test- Futhark.Test.Spec- Futhark.Test.Values- Futhark.Tools- Futhark.Transform.CopyPropagate- Futhark.Transform.FirstOrderTransform- Futhark.Transform.Rename- Futhark.Transform.Substitute- Futhark.Util- Futhark.Util.CMath- Futhark.Util.IntegralExp- Futhark.Util.Loc- Futhark.Util.Log- Futhark.Util.Options- Futhark.Util.Pretty- Futhark.Util.ProgressBar- Futhark.Util.Table- Futhark.Version- Language.Futhark- Language.Futhark.Core- Language.Futhark.Interpreter- Language.Futhark.Interpreter.Values- Language.Futhark.FreeVars- Language.Futhark.Parser- Language.Futhark.Parser.Monad- Language.Futhark.Parser.Lexer.Tokens- Language.Futhark.Parser.Lexer.Wrapper- Language.Futhark.Prelude- Language.Futhark.Pretty- Language.Futhark.Primitive- Language.Futhark.Primitive.Parse- Language.Futhark.Prop- Language.Futhark.Query- Language.Futhark.Semantic- Language.Futhark.Syntax- Language.Futhark.Traversals- Language.Futhark.Tuple- Language.Futhark.TypeChecker- Language.Futhark.TypeChecker.Match- Language.Futhark.TypeChecker.Modules- Language.Futhark.TypeChecker.Monad- Language.Futhark.TypeChecker.Terms- Language.Futhark.TypeChecker.Terms.DoLoop- Language.Futhark.TypeChecker.Terms.Monad- Language.Futhark.TypeChecker.Terms.Pat- Language.Futhark.TypeChecker.Types- Language.Futhark.TypeChecker.Unify- Language.Futhark.Warnings- other-modules:- Language.Futhark.Parser.Parser- Language.Futhark.Parser.Lexer- Paths_futhark- autogen-modules:- Paths_futhark- build-tool-depends:- alex:alex- , happy:happy- build-depends:- aeson >=2.0.0.0- , ansi-terminal >=0.6.3.1- , array >=0.4- , base >=4.15 && <5- , base16-bytestring- , binary >=0.8.3- , blaze-html >=0.9.0.1- , bytestring >=0.10.8- , bytestring-to-vector >=0.3.0.1- , bmp >=1.2.6.3- , co-log-core- , containers >=0.6.2.1- , cryptohash-md5- , Diff >=0.4.1- , directory >=1.3.0.0- , directory-tree >=0.12.1- , dlist >=0.6.0.1- , fgl- , fgl-visualize- , file-embed >=0.0.14.0- , filepath >=1.4.1.1- , free >=4.12.4- , futhark-data >= 1.1.0.0- , futhark-server >= 1.2.2.1- , futhark-manifest >= 1.2.0.1- , githash >=0.1.6.1- , half >= 0.3- , haskeline- , language-c-quote >= 0.12- , lens- , lsp >= 1.5.0- , mainland-pretty >=0.7.1- , cmark-gfm >=0.2.1- , megaparsec >=9.0.0- , mtl >=2.2.1- , neat-interpolation >=0.3- , parallel >=3.2.1.0- , random >= 1.2.0- , process-extras >=0.7.2- , regex-tdfa >=1.2- , srcloc >=0.4- , template-haskell >=2.11.1- , temporary- , terminal-size >=0.3- , text >=1.2.2.2- , time >=1.6.0.1- , transformers >=0.3- , vector >=0.12- , versions >=5.0.0- , zlib >=0.6.1.2- , statistics- , mwc-random- , prettyprinter >= 1.7- , prettyprinter-ansi-terminal >= 1.1--executable futhark- import: common- main-is: src/main.hs- ghc-options: -threaded -rtsopts "-with-rtsopts=-maxN16 -qg1 -A16M"- build-depends: base, futhark--test-suite unit- import: common- type: exitcode-stdio-1.0- main-is: futhark_tests.hs- hs-source-dirs: unittests- other-modules:- Futhark.AD.DerivativesTests- Futhark.BenchTests- Futhark.Pkg.SolveTests- Futhark.Analysis.AlgSimplifyTests- Futhark.IR.Prop.RearrangeTests- Futhark.IR.Prop.ReshapeTests- Futhark.IR.PropTests- Futhark.IR.Syntax.CoreTests- Futhark.IR.SyntaxTests- Futhark.IR.Mem.IntervalTests- Futhark.IR.Mem.IxFun.Alg- Futhark.IR.Mem.IxFunTests- Futhark.IR.Mem.IxFunWrapper- Language.Futhark.CoreTests- Language.Futhark.PrimitiveTests- Language.Futhark.SyntaxTests- Language.Futhark.TypeCheckerTests- Language.Futhark.TypeChecker.TypesTests- Futhark.Optimise.MemoryBlockMerging.GreedyColoringTests- Paths_futhark- build-depends:- QuickCheck >=2.8- , base- , containers- , futhark- , megaparsec- , tasty- , tasty-hunit- , tasty-quickcheck- , text+cabal-version: 2.4 +name: futhark +version: 0.24.3 +x-revision: 1 +synopsis: An optimising compiler for a functional, array-oriented language. + +description: Futhark is a small programming language designed to be compiled to + efficient parallel code. It is a statically typed, data-parallel, + and purely functional array language in the ML family, and comes + with a heavily optimising ahead-of-time compiler that presently + generates GPU code via CUDA and OpenCL, although the language itself + is hardware-agnostic. + . + For more information, see the website at https://futhark-lang.org + . + For introductionary information about hacking on the + Futhark compiler, see + <https://futhark.readthedocs.io/en/latest/hacking.html the hacking guide>. + Regarding the internal design of the compiler, the following modules make + good starting points: + . + * "Futhark" contains a basic architectural overview of the compiler. + * "Futhark.IR.Syntax" explains the + basic design of the intermediate representation (IR). + * "Futhark.Construct" explains how to write code that + manipulates and creates AST fragments. + . + <<docs/assets/ohyes.png You too can go fast once you rewrite your program in Futhark.>> + +category: Futhark +homepage: https://futhark-lang.org +bug-reports: https://github.com/diku-dk/futhark/issues +maintainer: Troels Henriksen athas@sigkill.dk +license: ISC +license-file: LICENSE +build-type: Simple +extra-source-files: +-- Cabal's recompilation tracking doesn't work when we use wildcards +-- here, so for now we spell out every single file. + rts/c/atomics.h + rts/c/context.h + rts/c/context_prototypes.h + rts/c/backends/c.h + rts/c/backends/cuda.h + rts/c/backends/multicore.h + rts/c/backends/opencl.h + rts/c/lock.h + rts/c/timing.h + rts/c/errors.h + rts/c/free_list.h + rts/c/tuning.h + rts/c/values.h + rts/c/half.h + rts/c/cache.h + rts/c/ispc_util.h + rts/c/scalar.h + rts/c/scalar_f16.h + rts/c/scheduler.h + rts/c/uniform.h + rts/c/util.h + rts/c/server.h + rts/futhark-doc/style.css + rts/javascript/server.js + rts/javascript/values.js + rts/javascript/wrapperclasses.js + rts/python/tuning.py + rts/python/panic.py + rts/python/memory.py + rts/python/server.py + rts/python/values.py + rts/python/opencl.py + rts/python/scalar.py + prelude/functional.fut + prelude/math.fut + prelude/soacs.fut + prelude/zip.fut + prelude/ad.fut + prelude/array.fut + prelude/prelude.fut +-- Just enough of the docs to build the manpages. + docs/**/*.rst + docs/Makefile + docs/conf.py + docs/requirements.txt +extra-doc-files: + assets/*.png + +source-repository head + type: git + location: https://github.com/diku-dk/futhark + +common common + ghc-options: -Wall -Wcompat -Wno-incomplete-uni-patterns -Wredundant-constraints -Wincomplete-record-updates -Wmissing-export-lists -Wunused-packages + default-language: Haskell2010 + default-extensions: + OverloadedStrings + -- The following extensions correspond to the GHC2021 language, + -- but we want to remain compatible with GHC 9.0, so we cannot use + -- it just yet. + BangPatterns + BinaryLiterals + ConstrainedClassMethods + ConstraintKinds + DeriveDataTypeable + DeriveFoldable + DeriveFunctor + DeriveGeneric + DeriveLift + DeriveTraversable + DoAndIfThenElse + EmptyCase + EmptyDataDecls + EmptyDataDeriving + ExistentialQuantification + ExplicitForAll + FlexibleContexts + FlexibleInstances + ForeignFunctionInterface + GADTSyntax + GeneralisedNewtypeDeriving + HexFloatLiterals + ImplicitPrelude + ImportQualifiedPost + InstanceSigs + KindSignatures + MonomorphismRestriction + MultiParamTypeClasses + NamedFieldPuns + NamedWildCards + NumericUnderscores + PatternGuards + PolyKinds + PostfixOperators + RankNTypes + RelaxedPolyRec + ScopedTypeVariables + StandaloneDeriving + StandaloneKindSignatures + StarIsType + TraditionalRecordSyntax + TupleSections + TypeApplications + TypeOperators + TypeSynonymInstances + +library + import: common + hs-source-dirs: src + exposed-modules: + Futhark + Futhark.Actions + Futhark.AD.Derivatives + Futhark.AD.Fwd + Futhark.AD.Rev + Futhark.AD.Rev.Loop + Futhark.AD.Rev.Hist + Futhark.AD.Rev.Map + Futhark.AD.Rev.Monad + Futhark.AD.Rev.Reduce + Futhark.AD.Rev.Scan + Futhark.AD.Rev.Scatter + Futhark.AD.Rev.SOAC + Futhark.Analysis.AlgSimplify + Futhark.Analysis.Alias + Futhark.Analysis.CallGraph + Futhark.Analysis.DataDependencies + Futhark.Analysis.HORep.MapNest + Futhark.Analysis.HORep.SOAC + Futhark.Analysis.Interference + Futhark.Analysis.LastUse + Futhark.Analysis.MemAlias + Futhark.Analysis.Metrics + Futhark.Analysis.Metrics.Type + Futhark.Analysis.PrimExp + Futhark.Analysis.PrimExp.Convert + Futhark.Analysis.PrimExp.Parse + Futhark.Analysis.PrimExp.Simplify + Futhark.Analysis.SymbolTable + Futhark.Analysis.UsageTable + Futhark.Bench + Futhark.Builder + Futhark.Builder.Class + Futhark.CLI.Autotune + Futhark.CLI.Bench + Futhark.CLI.C + Futhark.CLI.CUDA + Futhark.CLI.Check + Futhark.CLI.Benchcmp + Futhark.CLI.Datacmp + Futhark.CLI.Dataset + Futhark.CLI.Defs + Futhark.CLI.Dev + Futhark.CLI.Doc + Futhark.CLI.Eval + Futhark.CLI.Literate + Futhark.CLI.LSP + Futhark.CLI.Main + Futhark.CLI.Misc + Futhark.CLI.Multicore + Futhark.CLI.MulticoreISPC + Futhark.CLI.MulticoreWASM + Futhark.CLI.OpenCL + Futhark.CLI.Pkg + Futhark.CLI.PyOpenCL + Futhark.CLI.Python + Futhark.CLI.Query + Futhark.CLI.REPL + Futhark.CLI.Run + Futhark.CLI.Test + Futhark.CLI.WASM + Futhark.CodeGen.Backends.CCUDA + Futhark.CodeGen.Backends.CCUDA.Boilerplate + Futhark.CodeGen.Backends.COpenCL + Futhark.CodeGen.Backends.COpenCL.Boilerplate + Futhark.CodeGen.Backends.GenericC + Futhark.CodeGen.Backends.GenericC.CLI + Futhark.CodeGen.Backends.GenericC.Code + Futhark.CodeGen.Backends.GenericC.EntryPoints + Futhark.CodeGen.Backends.GenericC.Fun + Futhark.CodeGen.Backends.GenericC.Monad + Futhark.CodeGen.Backends.GenericC.Options + Futhark.CodeGen.Backends.GenericC.Pretty + Futhark.CodeGen.Backends.GenericC.Server + Futhark.CodeGen.Backends.GenericC.Types + Futhark.CodeGen.Backends.GenericPython + Futhark.CodeGen.Backends.GenericPython.AST + Futhark.CodeGen.Backends.GenericPython.Options + Futhark.CodeGen.Backends.GenericWASM + Futhark.CodeGen.Backends.MulticoreC + Futhark.CodeGen.Backends.MulticoreC.Boilerplate + Futhark.CodeGen.Backends.MulticoreISPC + Futhark.CodeGen.Backends.MulticoreWASM + Futhark.CodeGen.Backends.PyOpenCL + Futhark.CodeGen.Backends.PyOpenCL.Boilerplate + Futhark.CodeGen.Backends.SequentialC + Futhark.CodeGen.Backends.SequentialC.Boilerplate + Futhark.CodeGen.Backends.SequentialPython + Futhark.CodeGen.Backends.SequentialWASM + Futhark.CodeGen.Backends.SimpleRep + Futhark.CodeGen.RTS.C + Futhark.CodeGen.RTS.Python + Futhark.CodeGen.RTS.JavaScript + Futhark.CodeGen.ImpCode + Futhark.CodeGen.ImpCode.GPU + Futhark.CodeGen.ImpCode.Multicore + Futhark.CodeGen.ImpCode.OpenCL + Futhark.CodeGen.ImpCode.Sequential + Futhark.CodeGen.ImpGen + Futhark.CodeGen.ImpGen.CUDA + Futhark.CodeGen.ImpGen.GPU + Futhark.CodeGen.ImpGen.GPU.Base + Futhark.CodeGen.ImpGen.GPU.Group + Futhark.CodeGen.ImpGen.GPU.SegHist + Futhark.CodeGen.ImpGen.GPU.SegMap + Futhark.CodeGen.ImpGen.GPU.SegRed + Futhark.CodeGen.ImpGen.GPU.SegScan + Futhark.CodeGen.ImpGen.GPU.SegScan.SinglePass + Futhark.CodeGen.ImpGen.GPU.SegScan.TwoPass + Futhark.CodeGen.ImpGen.GPU.ToOpenCL + Futhark.CodeGen.ImpGen.GPU.Transpose + Futhark.CodeGen.ImpGen.Multicore + Futhark.CodeGen.ImpGen.Multicore.Base + Futhark.CodeGen.ImpGen.Multicore.SegHist + Futhark.CodeGen.ImpGen.Multicore.SegMap + Futhark.CodeGen.ImpGen.Multicore.SegRed + Futhark.CodeGen.ImpGen.Multicore.SegScan + Futhark.CodeGen.ImpGen.OpenCL + Futhark.CodeGen.ImpGen.Sequential + Futhark.CodeGen.ImpGen.Transpose + Futhark.CodeGen.OpenCL.Heuristics + Futhark.Compiler + Futhark.Compiler.CLI + Futhark.Compiler.Config + Futhark.Compiler.Program + Futhark.Construct + Futhark.Doc.Generator + Futhark.Error + Futhark.FreshNames + Futhark.IR + Futhark.IR.Aliases + Futhark.IR.GPU + Futhark.IR.GPU.Op + Futhark.IR.GPU.Simplify + Futhark.IR.GPU.Sizes + Futhark.IR.GPUMem + Futhark.IR.MC + Futhark.IR.MC.Op + Futhark.IR.MCMem + Futhark.IR.Mem + Futhark.IR.Mem.Interval + Futhark.IR.Mem.IxFun + Futhark.IR.Mem.Simplify + Futhark.IR.Parse + Futhark.IR.Pretty + Futhark.IR.Prop + Futhark.IR.Prop.Aliases + Futhark.IR.Prop.Constants + Futhark.IR.Prop.Names + Futhark.IR.Prop.Patterns + Futhark.IR.Prop.Rearrange + Futhark.IR.Prop.Reshape + Futhark.IR.Prop.Scope + Futhark.IR.Prop.TypeOf + Futhark.IR.Prop.Types + Futhark.IR.Rep + Futhark.IR.Rephrase + Futhark.IR.RetType + Futhark.IR.SOACS + Futhark.IR.SOACS.SOAC + Futhark.IR.SOACS.Simplify + Futhark.IR.SegOp + Futhark.IR.Seq + Futhark.IR.SeqMem + Futhark.IR.Syntax + Futhark.IR.Syntax.Core + Futhark.IR.Traversals + Futhark.IR.TypeCheck + Futhark.Internalise + Futhark.Internalise.AccurateSizes + Futhark.Internalise.Bindings + Futhark.Internalise.Defunctionalise + Futhark.Internalise.Defunctorise + Futhark.Internalise.Entry + Futhark.Internalise.Exps + Futhark.Internalise.Lambdas + Futhark.Internalise.LiftLambdas + Futhark.Internalise.Monad + Futhark.Internalise.Monomorphise + Futhark.Internalise.TypesValues + Futhark.LSP.Compile + Futhark.LSP.Diagnostic + Futhark.LSP.Handlers + Futhark.LSP.Tool + Futhark.LSP.State + Futhark.LSP.PositionMapping + Futhark.MonadFreshNames + Futhark.Optimise.BlkRegTiling + Futhark.Optimise.CSE + Futhark.Optimise.DoubleBuffer + Futhark.Optimise.EntryPointMem + Futhark.Optimise.Fusion + Futhark.Optimise.Fusion.Composing + Futhark.Optimise.Fusion.GraphRep + Futhark.Optimise.Fusion.TryFusion + Futhark.Optimise.GenRedOpt + Futhark.Optimise.HistAccs + Futhark.Optimise.InPlaceLowering + Futhark.Optimise.InPlaceLowering.LowerIntoStm + Futhark.Optimise.InPlaceLowering.SubstituteIndices + Futhark.Optimise.InliningDeadFun + Futhark.Optimise.MemoryBlockMerging + Futhark.Optimise.MemoryBlockMerging.GreedyColoring + Futhark.Optimise.ArrayShortCircuiting + Futhark.Optimise.ArrayShortCircuiting.ArrayCoalescing + Futhark.Optimise.ArrayShortCircuiting.DataStructs + Futhark.Optimise.ArrayShortCircuiting.MemRefAggreg + Futhark.Optimise.ArrayShortCircuiting.TopdownAnalysis + Futhark.Optimise.MergeGPUBodies + Futhark.Optimise.ReduceDeviceSyncs + Futhark.Optimise.ReduceDeviceSyncs.MigrationTable + Futhark.Optimise.ReduceDeviceSyncs.MigrationTable.Graph + Futhark.Optimise.Simplify + Futhark.Optimise.Simplify.Engine + Futhark.Optimise.Simplify.Rep + Futhark.Optimise.Simplify.Rule + Futhark.Optimise.Simplify.Rules + Futhark.Optimise.Simplify.Rules.BasicOp + Futhark.Optimise.Simplify.Rules.ClosedForm + Futhark.Optimise.Simplify.Rules.Index + Futhark.Optimise.Simplify.Rules.Loop + Futhark.Optimise.Simplify.Rules.Match + Futhark.Optimise.Simplify.Rules.Simple + Futhark.Optimise.Sink + Futhark.Optimise.TileLoops + Futhark.Optimise.TileLoops.Shared + Futhark.Optimise.Unstream + Futhark.Pass + Futhark.Pass.AD + Futhark.Pass.ExpandAllocations + Futhark.Pass.ExplicitAllocations + Futhark.Pass.ExplicitAllocations.GPU + Futhark.Pass.ExplicitAllocations.MC + Futhark.Pass.ExplicitAllocations.SegOp + Futhark.Pass.ExplicitAllocations.Seq + Futhark.Pass.ExtractKernels + Futhark.Pass.ExtractKernels.BlockedKernel + Futhark.Pass.ExtractKernels.DistributeNests + Futhark.Pass.ExtractKernels.Distribution + Futhark.Pass.ExtractKernels.ISRWIM + Futhark.Pass.ExtractKernels.Interchange + Futhark.Pass.ExtractKernels.Intragroup + Futhark.Pass.ExtractKernels.StreamKernel + Futhark.Pass.ExtractKernels.ToGPU + Futhark.Pass.ExtractMulticore + Futhark.Pass.FirstOrderTransform + Futhark.Pass.KernelBabysitting + Futhark.Pass.LiftAllocations + Futhark.Pass.LowerAllocations + Futhark.Pass.Simplify + Futhark.Passes + Futhark.Pipeline + Futhark.Pkg.Info + Futhark.Pkg.Solve + Futhark.Pkg.Types + Futhark.Script + Futhark.Test + Futhark.Test.Spec + Futhark.Test.Values + Futhark.Tools + Futhark.Transform.CopyPropagate + Futhark.Transform.FirstOrderTransform + Futhark.Transform.Rename + Futhark.Transform.Substitute + Futhark.Util + Futhark.Util.CMath + Futhark.Util.IntegralExp + Futhark.Util.Loc + Futhark.Util.Log + Futhark.Util.Options + Futhark.Util.Pretty + Futhark.Util.ProgressBar + Futhark.Util.Table + Futhark.Version + Language.Futhark + Language.Futhark.Core + Language.Futhark.Interpreter + Language.Futhark.Interpreter.Values + Language.Futhark.FreeVars + Language.Futhark.Parser + Language.Futhark.Parser.Monad + Language.Futhark.Parser.Lexer.Tokens + Language.Futhark.Parser.Lexer.Wrapper + Language.Futhark.Prelude + Language.Futhark.Pretty + Language.Futhark.Primitive + Language.Futhark.Primitive.Parse + Language.Futhark.Prop + Language.Futhark.Query + Language.Futhark.Semantic + Language.Futhark.Syntax + Language.Futhark.Traversals + Language.Futhark.Tuple + Language.Futhark.TypeChecker + Language.Futhark.TypeChecker.Match + Language.Futhark.TypeChecker.Modules + Language.Futhark.TypeChecker.Monad + Language.Futhark.TypeChecker.Terms + Language.Futhark.TypeChecker.Terms.DoLoop + Language.Futhark.TypeChecker.Terms.Monad + Language.Futhark.TypeChecker.Terms.Pat + Language.Futhark.TypeChecker.Types + Language.Futhark.TypeChecker.Unify + Language.Futhark.Warnings + other-modules: + Language.Futhark.Parser.Parser + Language.Futhark.Parser.Lexer + Paths_futhark + autogen-modules: + Paths_futhark + build-tool-depends: + alex:alex + , happy:happy + build-depends: + aeson >=2.0.0.0 + , ansi-terminal >=0.6.3.1 + , array >=0.4 + , base >=4.15 && <5 + , base16-bytestring + , binary >=0.8.3 + , blaze-html >=0.9.0.1 + , bytestring >=0.10.8 + , bytestring-to-vector >=0.3.0.1 + , bmp >=1.2.6.3 + , co-log-core + , containers >=0.6.2.1 + , cryptohash-md5 + , Diff >=0.4.1 + , directory >=1.3.0.0 + , directory-tree >=0.12.1 + , dlist >=0.6.0.1 + , fgl + , fgl-visualize + , file-embed >=0.0.14.0 + , filepath >=1.4.1.1 + , free >=4.12.4 + , futhark-data >= 1.1.0.0 + , futhark-server >= 1.2.2.1 + , futhark-manifest >= 1.2.0.1 + , githash >=0.1.6.1 + , half >= 0.3 + , haskeline + , language-c-quote >= 0.12 + , lens + , lsp >= 1.5.0 + , mainland-pretty >=0.7.1 + , cmark-gfm >=0.2.1 + , megaparsec >=9.0.0 + , mtl >=2.2.1 + , neat-interpolation >=0.3 + , parallel >=3.2.1.0 + , random >= 1.2.0 + , process-extras >=0.7.2 + , regex-tdfa >=1.2 + , srcloc >=0.4 + , template-haskell >=2.11.1 + , temporary + , terminal-size >=0.3 + , text >=1.2.2.2 + , time >=1.6.0.1 + , transformers >=0.3 + , vector >=0.12 + , versions >=5.0.0 && < 6 + , zlib >=0.6.1.2 + , statistics + , mwc-random + , prettyprinter >= 1.7 + , prettyprinter-ansi-terminal >= 1.1 + +executable futhark + import: common + main-is: src/main.hs + ghc-options: -threaded -rtsopts "-with-rtsopts=-maxN16 -qg1 -A16M" + build-depends: base, futhark + +test-suite unit + import: common + type: exitcode-stdio-1.0 + main-is: futhark_tests.hs + hs-source-dirs: unittests + other-modules: + Futhark.AD.DerivativesTests + Futhark.BenchTests + Futhark.Pkg.SolveTests + Futhark.Analysis.AlgSimplifyTests + Futhark.IR.Prop.RearrangeTests + Futhark.IR.Prop.ReshapeTests + Futhark.IR.PropTests + Futhark.IR.Syntax.CoreTests + Futhark.IR.SyntaxTests + Futhark.IR.Mem.IntervalTests + Futhark.IR.Mem.IxFun.Alg + Futhark.IR.Mem.IxFunTests + Futhark.IR.Mem.IxFunWrapper + Language.Futhark.CoreTests + Language.Futhark.PrimitiveTests + Language.Futhark.SyntaxTests + Language.Futhark.TypeCheckerTests + Language.Futhark.TypeChecker.TypesTests + Futhark.Optimise.MemoryBlockMerging.GreedyColoringTests + Paths_futhark + build-depends: + QuickCheck >=2.8 + , base + , containers + , futhark + , megaparsec + , tasty + , tasty-hunit + , tasty-quickcheck + , text
revision 2
cabal-version: 2.4 name: futhark version: 0.24.3 -x-revision: 1 +x-revision: 2 synopsis: An optimising compiler for a functional, array-oriented language. description: Futhark is a small programming language designed to be compiled to , haskeline , language-c-quote >= 0.12 , lens - , lsp >= 1.5.0 + , lsp >= 1.5.0 && < 1.6.0 , mainland-pretty >=0.7.1 , cmark-gfm >=0.2.1 , megaparsec >=9.0.0