Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 100 lines (67 sloc) 2.847 kB
94900c9 @emmanuelbernard Add Apache Software License
emmanuelbernard authored
1 # Ceylon specification and type analyzer
f989bfb @gavinking README in markdown
gavinking authored
2
25c2d5e @gavinking intro to readme
gavinking authored
3 This project contains:
4
5 * The Ceylon Language Specification, in docbook format.
6 * A parser for the language, implemented using ANTLR.
7 * A syntax tree for the language.
560a167 @gavinking link
gavinking authored
8 * A type analyzer, implemented in Java.
9
10 For more information about the Ceylon, go to the community
11 website:
12
13 <http://ceylon-lang.org>
25c2d5e @gavinking intro to readme
gavinking authored
14
94900c9 @emmanuelbernard Add Apache Software License
emmanuelbernard authored
15 ## Specification
f989bfb @gavinking README in markdown
gavinking authored
16
17 To build the PDF and HTML specifications, in the root
18 directory type:
19
20 ant
21
22 The specification is compiled into `build/en`.
23
24 To build just the PDF, type:
25
6a51ff2 @gavinking rename ant targets
gavinking authored
26 ant pdf
f989bfb @gavinking README in markdown
gavinking authored
27
560a167 @gavinking link
gavinking authored
28 The PDF specification is compiled then copied into the root
29 directory.
f989bfb @gavinking README in markdown
gavinking authored
30
31 Directory structure:
32
33 * `en` - the docbook source of the language
34 specification
35 * `support` - the docbook build
36
5fe7b33 @quintesse Updated the README to include info about setting up the dev environment
quintesse authored
37 ## Build and test the type analyzer
f989bfb @gavinking README in markdown
gavinking authored
38
5fe7b33 @quintesse Updated the README to include info about setting up the dev environment
quintesse authored
39 For setting up the development environment and compiling and building the distribution
e3623a8 @quintesse Fixed README to point to the correct Ceylon distribution build instru…
quintesse authored
40 take a look at [ceylon-dist](https://github.com/ceylon/ceylon-dist#ceylon-distribution).
b6ab285 @emmanuelbernard issue #219 - Add dependency to module repository project
emmanuelbernard authored
41
5fe7b33 @quintesse Updated the README to include info about setting up the dev environment
quintesse authored
42 If after having built the distribution you want to build and test the type analyzer
43 return to `ceylon-spec` and run
b6ab285 @emmanuelbernard issue #219 - Add dependency to module repository project
emmanuelbernard authored
44
45 ant clean publish
5fe7b33 @quintesse Updated the README to include info about setting up the dev environment
quintesse authored
46
47 To run the tests type
f989bfb @gavinking README in markdown
gavinking authored
48
49 ant test
50
51 To (re)generate the parser and and syntax tree, type:
52
53 ant clean tree
54
55 Directory structure:
56
57 * `Ceylon.g` - the ANTLR grammar for the language
58 * `Ceylon.nodes` - the specification of the syntax tree
59 * `src/` - the Java implementation of the type
60 analyzer
61 * `languagesrc/` - the Ceylon implementation of the
62 language module
63 * `test` - the tests for the type analyzer,
64 written in Ceylon, with a special
65 `@assertion` syntax extension
66 * `lib/` - required dependencies for building
67 and running the tests
68 * `treegen/` - the ANTLR grammars that generate
69 the syntax tree
70 * `gensrc/` - the generated Java implementation
71 of the parser and syntax tree
72
94900c9 @emmanuelbernard Add Apache Software License
emmanuelbernard authored
73 ## Repository
74
f989bfb @gavinking README in markdown
gavinking authored
75 The local repository is created under `~/.ceylon/repo`
76
77 To publish the type checker and language module (this
78 is required before building the compiler), type:
79
80 ant publish
81
82 Other commands:
83
84 * `ant clean.repo` - clean local repository
85 * `ant publish.language.module` - publish `ceylon.language`
86 module as `.template`
87 file in the local repo
88 * `ant publish.typechecker` - publish typechecker jar
89 in the local repo
90 * `ant publish` - publish both
94900c9 @emmanuelbernard Add Apache Software License
emmanuelbernard authored
91
92 ## License
93
94 The content of this repository is released under the ASL v2.0
95 as provided in the LICENSE file that accompanied this code.
96
560a167 @gavinking link
gavinking authored
97 By submitting a "pull request" or otherwise contributing to
98 this repository, you agree to license your contribution under
99 the license mentioned above.
Something went wrong with that request. Please try again.