sugarhaskell alternatives and similar packages
Based on the "Code Generation" category.
Alternatively, view sugarhaskell alternatives based on common mentions on social networks and blogs.
bond10.0 0.0 L3 sugarhaskell VS bondBond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services.
llvm-hs9.8 0.0 sugarhaskell VS llvm-hsHaskell bindings for LLVM
llvm-general9.5 0.0 sugarhaskell VS llvm-generalRich LLVM bindings for Haskell (with transfer of LLVM IR to and from C++, detailed compilation pass control, etc.)
dataflow9.4 0.0 sugarhaskell VS dataflowRender graphs using a declarative markup.
morloc9.4 0.0 sugarhaskell VS morlocA typed, polyglot, functional language
llvm9.3 0.0 sugarhaskell VS llvmHaskell bindings to the LLVM compiler infrastructure project.
x86-64bit9.1 0.0 sugarhaskell VS x86-64bitRuntime code generation for x86 64 bit machine code
llvm-pretty-bc-parserParser for the llvm bitcode format
llvm-pretty8.4 0.0 sugarhaskell VS llvm-prettyAn llvm pretty printer inspired by the haskell llvm binding
haskell-generate7.8 0.0 sugarhaskell VS haskell-generateType-safe library for generating haskell source code
harpy6.4 0.0 sugarhaskell VS harpyRuntime code generation for x86 machine code
llvm-general-quoteUse QuasiQuotation with llvm-general
flexible-defaultsTemplate Haskell system for implementing type classes with complex default-implementation rules
Clean code begins in your IDE with SonarLint
* 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 sugarhaskell or a related project?
SugarJ Eclipse plugin (recommended)
Visit the SugarJ web site http://sugarj.org
- Install Eclipse (follow instructions on eclipse.org).
- Start Eclipse.
- In Eclipse, select 'Install New Software' in the 'Help' menu.
- In the 'work with' field, copy the SugarJ update site http://update.sugarj.org and hit enter.
- Be sure to deselect the 'Group items by category' checkbox on the bottom of the window.
- Select the latest instance of Sugarclipse and click continue. This will install the SugarJ compiler, Spoofax and the Sugarclipse plugin.
In addition, please ensure enough stack space (about 4-16 MB) is available for the SDF parser. You can set the stack space of your Java runtime using the -Xss16m command line argument when starting Eclipse or setting -Xss16m in your eclipse.ini file.
Setting up a SugarJ project
- Create a new Java project.
- As for now, we need to register the SugarJ builder for this project by hand: Open your project's '.project' file in any text editor and replace the Java build command by the following code: org.sugarj.editor.SugarJBuilder
- We're ready to go. Note: SugarJ source files must have the file extension ".sugj".
SugarJ standalone compiler
Precompiled Java binaries: http://sugarj.org/binaries/
The SugarJ compiler is self-contained and only requires an installation of a
Java runtime version 6 or higher. Download
sugarj.zip and extract it to a location of your
choice. The directory structure of the archive is as follows.
sugarj/ bin/ Scripts to invoke SugarJ sugarj Compiler for *nix sugarj.bat Compiler for Windows sugh Alias of `sugarj -l haskell` for *nix sugh.bat Alias of `sugarj -l haskell` for Windows sugj Alias of `sugarj -l java` for *nix sugj.bat Alias of `sugarj -l java` for Windows case-studies/ Sample SugarJ projects lib/ The back end README.md This file
If the current directory is your working directory containing the source files, calling SugarJ is very easy:
bin/sugarj -l java closures/Test.sugj
-l flag is necessary to specify your host language of choice. Currently,
we support Haskell, Java, and Prolog.
If your source files are located in
case-studies/closure/src, you can invoke
the compiler like this on *nix:
bin/sugarj -l java \ --sourcepath case-studies/closures/src \ -d case-studies/closures/bin \ concretesyntax/Test.sugj # file(s) to compile relative # to sourcepath
bin\sugarj -l java ^ --sourcepath case-studies/closures/src ^ -d case-studies/closures/bin ^ concretesyntax\Test.sugj
Test.class may be executed thus:
java -cp case-studies/closures/bin concretesyntax.Test
--atomic-imports Parse all import statements simultaneously. --cache <arg> Specifiy a directory for caching. --cache-info Show where files are cached -cp,--buildpath <arg> Specify where to find compiled files. Multiple paths can be given separated by ':'. -d <arg> Specify where to place compiled files --full-command-line Show all arguments to subprocesses --gen-files Generate files? --help Print this synopsis of options -l,--language <arg> Specify a language library to activate. --no-checking Do not check resulting SDF and Stratego files. --read-only-cache Specify the cache to be read-only. --silent-execution Try to be silent --sourcepath <arg> Specify where to find source files. Multiple paths can be given separated by ':'. --sub-silent-execution Do not display output of subprocesses -v,--verbose Show verbose output --write-only-cache Specify the cache to be write-only.