cabal-version: 3.0 -- The cabal-version field refers to the version of the .cabal specification, -- and can be different from the cabal-install (the tool) version and the -- Cabal (the library) version you are using. As such, the Cabal (the library) -- version used must be equal or greater than the version stated in this field. -- Starting from the specification version 2.2, the cabal-version field must be -- the first thing in the cabal file. -- Initial package description 'fregel' generated by -- 'cabal init'. For further documentation, see: -- http://haskell.org/cabal/users-guide/ -- -- The name of the package. name: fregel -- The package version. -- See the Haskell package versioning policy (PVP) for standards -- guiding when and how versions should be incremented. -- https://pvp.haskell.org -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change version: 1.2.0 -- A short (one-line) description of the package. synopsis: A functional DSL for vertex-centric large-scale graph processing -- A longer description of the package. description: Fregel (Functional Pregel) is a functional domain-specific language for developing programs of vertex-centric (i.e., Pregel) style of big graph processing, in which the computation at every vertex is abstracted as a higher-order function. Fregel has clear functional semantics and supports declarative description of vertex computation. The current Fregel processor is a translator (compiler) from Fregel code into Giraph code in Java / Pregel+ code in C++. Technical details can be found in the JFP paper (DOI: https://doi.org/10.1017/S0956796821000277 ). Note that some optimization options need Z3, an SMT solver, to be installed in your system. -- URL for the project homepage or repository. homepage: https://ipl.cs.uec.ac.jp/~iwasaki/Fregel -- The license under which the package is released. license: MIT -- The file containing the license text. license-file: LICENSE -- The package author(s). author: Hideya Iwasaki, Kento Emoto, Akimasa Morihata, Kiminori Matsuzaki, Zhenjiang Hu -- An email address to which users can send suggestions, bug reports, and patches. maintainer: emoto@csn.kyutech.ac.jp, iwasaki@cs.meiji.ac.jp -- A copyright notice. -- copyright: category: Language build-type: Simple -- Extra doc files to be distributed with the package, such as a CHANGELOG or a README. extra-doc-files: CHANGELOG.md -- Extra source files to be distributed with the package, such as examples, or a tutorial module. -- extra-source-files: common warnings ghc-options: -Wall executable fregel -- Import common warning flags. import: warnings -- .hs or .lhs file containing the Main module. main-is: Main.hs -- Modules included in this executable, other than Main. other-modules: ASTData , ASTTrans , AggregatorExtraction , Analysis , Convert0 , DependencySimple , GenSMT , IR , IRtoPregel , Inlining , Lexer , Normalization , NtoIR , Parser , Spec , Spec0 , TypeChecker , TypeInstantiation , VCOutputNormalization -- LANGUAGE extensions used by modules in this package. -- other-extensions: -- Other library packages from which modules are imported. build-depends: base >=4.14.0.0 && < 4.19.0.0 , array ^>=0.5.4.0 , groom ^>=0.1.2.1 , process ^>=1.6.16.0 , mtl ^>=2.2.2 -- Directories containing source files. hs-source-dirs: compiler -- needs happy and alex build-tool-depends: happy:happy, alex:alex -- Base language which the package is written in. default-language: Haskell2010