language-pig alternatives and similar packages
Based on the "Language" category.
Alternatively, view language-pig alternatives based on common mentions on social networks and blogs.
-
elm-compiler
Compiler for Elm, a functional language for reliable webapps. -
purescript
A strongly-typed language that compiles to JavaScript -
stylish-haskell
Haskell code prettifier [Moved to: https://github.com/haskell/stylish-haskell] -
haskell-src-exts
Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer -
haskell-tools-ast-fromghc
Developer tools for Haskell -
language-python
A parser for Python 2.x and 3.x written in Haskell -
liquid-fixpoint
Horn Clause Constraint Solving for Liquid Types -
nirum
Nirum: IDL compiler and RPC/distributed object framework for microservices -
elm-export
Create Elm types and JSON decoders from Haskell source. -
tal
An implementation of Typed Assembly Language (Morrisett, Walker, Crary, Glew) -
shentong
A Haskell implementation of the Shen programming language. -
camfort
Light-weight verification and transformation tools for Fortran -
language-c-quote
C/CUDA/OpenCL/Objective-C quasiquoting library. -
language-ecmascript
Haskell library: ECMAScript parser, pretty-printer and additional tools -
aterm-utils
Utility functions for working with aterms as generated by Minitermite -
ministg
Ministg is an interpreter for a high-level, small-step, operational semantics for the STG machine. -
purescript-tsd-gen
TypeScript Declaration File (.d.ts) generator for PureScript
Access the most powerful time series database as a service
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of language-pig or a related project?
README
language-pig
Parser and pretty printer for the Apache Pig scripting language (http://pig.apache.org/). The current version is implemented using Parsec parser combinators.
Install
Cabal project, now on hackage, so the usual
cabal install language-pig
Or from source
git clone ...
cd language-pig
cabal install
Use
Parse an expression:
parseString :: [Char] -> Root
Returns an AST (type Root is the root node).
Parse a file:
parseFile :: FilePath -> IO PigFile
PigFile contains the Root (of AST) and the file name. If you want just the AST, parseFileForAST would do it.
Pretty print the produced tree:
putStrLn $ prettyPrint tree
So to round it up, if you want to parse and pretty print the parsed AST of a Pig file (using Control.Applicative (<$>))
prettyPrint <$> parseFileForAST "example.pig" >>= putStrLn