Skip to content

ceyeep/CJC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CleanJava Checker (CJC) Source Distribution - Readme File

- CJC project compilation requirements:
	- JastAddJ 7
	- Java SDK 7.x +
	- Apache Ant 1.8.x +

	- Set environment variables for Apache and Java binary directories 
		(use JAVA_HOME variable for Java SDK)
	- Create the following directory structure:
	
		CleanJavaChecker
		    /       \
		JastAddJ    CJC

- Building the checker:
	- Go to CJC module directory and type "ant" on the command line
	- To set the project to its original state type "ant clean"

- Working with CJC:
	- Run the checker by typing "java cleanJavaTools/CleanJavaChecker <File path>/<Filename>.java"
		in a command prompt, or using the cjc.bat batch file in a Windows command prompt
		"cjc <File path>/<Filename>.java"
	- Run the pretty printer by typing "java cleanJavaTools/JavaPrettyPrinter <File path>/[Filename].java"
	- View the program's generated AST by typing "java cleanJavaTools/JavaDumpTree <File path>/[Filename].java" 
	- Type "java cleanJavaTools/CleanJavaChecker -help" to view all available command line options
		

- ANT options:
	- build: default ANT option, compiles JastAdd and Java files
	- clean: deletes build generated files
	- test: runs JUnit test suites
	- test-parser: runs parser test suite
	- test-typechecking: runs type checking test suite
	- jar: creates a binary file distribution contained in a JAR file
	- source: creates a source file distribution
	- doc: generates documentation in HTML form using AST's Javadoc annotations 
		(generated in "doc" directory)
		
-  CJC supports the following CleanJava language features 
	- CleanJava annotations
	- Intended functions
	- Java expressions
	- CleanJava operators and expressions
	- Iterate operators
	
	Visit CJC wiki at https://github.com/ceyeep/CJC/wiki to find a complete description 
	of the different language features supported by CJC
	
- Notes:
	- JASG framework (https://github.com/ceyeep/JASG.git) supports the development
		of JastAdd modules by providing tools for generating JastAdd specification files 
		using templates and XML specification files.

- LICENSING

	The CleanJava Checker framework code is covered by the BSD license.
	
	The included tools are covered by their individual licenses (see licenses folder):
	JastAddJ (BSD licencse)
	JastAdd (BSD license)
	jflex (lexer generator) (GPL license)
	beaver (parser generator) (BSD license)
	junit 4 (testing tool) (Common Public License)

About

A static checker for the CleanJava language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors