Skip to content

Commit 46422d3

Browse files
committed
merge master into new ast. It's crazy awesome.
1 parent 7c76dd9 commit 46422d3

109 files changed

Lines changed: 4900 additions & 1049 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ examples/appengine/war/
88
target
99
.redcar
1010
.DS_Store
11+
Gemfile.lock

Gemfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
source :rubygems
2+
3+
gemspec
4+
5+
gem "rake"
6+
gem "bitescript", :git => 'https://github.com/headius/bitescript.git'
7+
# To test against a local copy of bitescript,
8+
# replace ":git => ''" with ":path => '<path to your local copy>'"
9+
gem 'turn'

History.txt

Lines changed: 241 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,244 @@
1+
=== 0.0.10 / 2011-11-20
2+
3+
f6035d0 set version to 0.0.10
4+
3b06353 use test_helper in gwt test
5+
4d29eeb turns out a number of things rely on MirahCommands being truthy on success
6+
46e6719 fixes 156 for real, also do the ant lowercase thing
7+
9e40121 don't exit on successful compile
8+
1155765 move comment about class loader to line it refers to
9+
985c70f add jvm_version option to Compile ant task w/ 1.6 default
10+
e5a60b2 replace duby with mirah in lib/mirah/ast/flow.rb
11+
5690e6f split rescue error tests to deal w/ caching expression value
12+
1f77ed8 add some white space, use #empty? instead of size==0
13+
677e4aa fixes #52 by raising an inference error when types arent compat
14+
81be877 add assert_raise_java to get around the NativeException thing
15+
d744f44 use assert_raise instead of begin;fail/rescue
16+
05afc6e pull out rescue tests for jvm into separate file
17+
7a933f3 raise an inference error when method has same name as macro. fixes #123
18+
6517a90 clean up the Block#add_methods method a bit
19+
0a826dd ensure that a block body is created even when the block is empty
20+
d8b0641 change duby to mirah in Binding#binding_type
21+
47883e9 change duby to mirah in StaticScope#binding_type
22+
8f3fddf Fix whitespace.
23+
74b6195 use turn for prettying up test output
24+
23d0693 add license header to test_macros
25+
143ac6c add a test_helper to put global test config in
26+
6fe3241 fix #149 exit 1 when there are errors
27+
31074c6 fix #146 by not reassigning self to Builtin
28+
8fb471e s/duby/mirah/ in jvm types intrinsics
29+
ff06791 s/qote/quote/
30+
972a9f9 refactor void checking on method return into method
31+
605c377 fix #148 in the simplest way possible
32+
f1b5c19 fix inspect_children typo
33+
4140fa7 use case statements instead of === & if elses in UnquotedValueAssign#node
34+
b82bbeb in Node#inspect_children, replace if elses w/ a case statement
35+
049a4cf clean up body inference a little
36+
d9e92b4 Merge remote branch 'thomaslee/master' into thomaslee
37+
0c72195 fix name of compilation test
38+
cfbf4c5 bump versions to 0.0.10{.dev,-SNAPSHOT}
39+
8c0ecec Fix test_empty_array.
40+
41+
=== 0.0.9 / 2011-09-12
42+
43+
a5963ef use self hosted classloader fixes #144
44+
a858a2f fix for #114
45+
989fd1b fix #119, add transform for empty array literal
46+
a474b84 fix #120, java source now prints out longs as <n>L
47+
0e25733 bump version to 0.0.9{dev, -SNAPSHOT}
48+
fb34f03 fix #138, underscores and dashes both act the same
49+
cffd819 Merge pull request #143 from hackergarten/master
50+
0f3af83 sorting lists and arrays examples
51+
59662e2 string 'character' length example
52+
9e541df string case example
53+
f8174ac sleep example
54+
04399d3 secure temporary file example
55+
d77902c host instrospection example
56+
c0433a5 hostname example
57+
ab134aa hamming numbers example
58+
d468081 arrays examples
59+
e8425f3 random number example
60+
e974827 Merge pull request #142 from consiliens/master
61+
084aa65 Update NOTICE.
62+
735983f Merge pull request #140 from abscondment/140-ant-compile
63+
d2a4010 Allow for false case too. #140
64+
a7925ed Fixes #140 by * Raising an Exception in MirahCommand.compile if Mirah.compile fails (i.e. it returns nil) * Allowing that exception to pass through the two layers of scope in the ant task so Ant will actually see it and fail accordingly.
65+
7244e11 Merge pull request #139 from hackergarten/master
66+
f0ef0d5 added apache license to all samples files.
67+
a4f8cf0 added multiline comments example
68+
69+
=== 0.0.8 / 2011-08-31
70+
71+
af43b77 Merge pull request #132 from hackergarten/master
72+
416e130 readme file
73+
fbf6ddc fix #129 call next anyway if there is no block arg
74+
18cef56 s/duby/mirah/ in a test
75+
945558b pull enumerable/loop tests into separate file
76+
585856e s/duby/mirah/ in transformer
77+
f0cc410 adding a couple method docs
78+
11dac9a push some code around and do a few s/duby/mirah/ s
79+
17b0031 wrap the bodies of blocks passed to macros as well
80+
02e5cbe clean up tests some
81+
794d61d pull macro tests into separate file
82+
ae1b942 flatten a list example
83+
98ccad9 create a file example
84+
9dc8981 file size example
85+
fddd3e2 count occurrences of a substring examples
86+
2297cd7 is string numeric example
87+
6ccaf02 empty string
88+
4c58e5a fizz buzz example
89+
e1e107a empty string example
90+
643e80a added copy a string sample
91+
b3c35a5 fibonacci example
92+
abdf45c factorial example
93+
cd3eb03 how to do comments
94+
9af53ee boolean value examples
95+
973ef14 some macro examples
96+
121b654 square with strings
97+
095773d hahahah guess what
98+
c8c4465 reading user input
99+
ddf8eda Palindrome
100+
df01492 reverse a string
101+
186c333 rot 13 example
102+
13f4a10 initial version of the 100 doors
103+
da29d35 removed unneeded parameter
104+
09ded03 99 bottles of beer
105+
f1b490c added repeating a string sample
106+
ba99754 update issues link on readme
107+
785c6c7 further tets helper factorization
108+
051854b make javac helper's compile almost the same as bytecode's
109+
1d9648b refactor javac tests parsing and infering steps
110+
ba44c0d default args are evaled on call
111+
3ebe9f3 use some of the helper methods defined in bytecode's helper in javac's
112+
5c2b47c fix main in files w/ classes of same name contained in them
113+
3b69287 file name should also be configurable for javac compilation
114+
e3d2dc7 pulling out a couple assertion definitions into a helper file
115+
c0112a4 overall task should fail if any tests failed
116+
2da4ca2 annotate new rake tasks
117+
5ae27b7 making all tests run even if some fail
118+
ae6d8e6 fixing up helpers for jvm tests a bit
119+
66e87d9 tease apart test #compile method for bytecode
120+
dbbcf8e split bytecode and javac tests
121+
aa21dc9 split tests into multiple dirs and tasks
122+
feb8028 Remove unnecessary, broken 'super' call in BlockArgument.
123+
02101c3 Update the bootstrap JAR to incorporate the new loop macro in builtins.mirah
124+
de68299 test fallout from top level changes, loop test still fails
125+
2786cfd sometimes children can be nil
126+
1b9b018 Merge in loop macro from techomancy.
127+
fa13c03 Merge pull request #53 from ashee/master
128+
be84d53 Merge pull request #82 from baroquebobcat/use_bundler
129+
2ba1932 Merge pull request #85 from rdp/mergeable2
130+
b4e3106 Merge pull request #88 from baroquebobcat/fix_up_env_tests_and_a_typo
131+
7212065 Merge pull request #89 from jabr/master
132+
71c7c3f Merge pull request #90 from baroquebobcat/test_reorg
133+
50d37d5 Merge pull request #91 from baroquebobcat/fix_syntax_error_not_providing_messages
134+
e206d90 Merge pull request #92 from baroquebobcat/update_compile_ant_class_from_duby
135+
4a9d8e2 Merge pull request #93 from szegedi/dynalang-0.2
136+
688fe7d Update to use dynalink-0.2.
137+
9f96ab0 mirah-ify ant compile task
138+
b6b92d6 wrap jmeta syntax errors w/ mirah ones
139+
2d48ca2 unshift of lib unnecessary as it is put on the path by the test task
140+
fbae14b modularize assert_include
141+
b0c05c8 move compile methods out of respective classes and into helper
142+
a563f4a added test helper for jvm tests
143+
d4070fe moved jvm tests into subdirectory
144+
688c18d Call original create_method_builder in default case when patching the JVM compiler in the GWT plugin.
145+
f3c7a7d Only generate a main function when we really need it (i.e. not when the source only has imports, class definitions, and interface declarations).
146+
c001130 Add require 'rubygems' to scripts so bitescript gem can be found.
147+
34c19d3 typo s/seperator/separator/
148+
0886a72 fix the env tests I broke in ac92625bf76dc00d
149+
922d5eb Merge pull request #84 from baroquebobcat/use_1_6_bytecode
150+
57dc505 Merge pull request #78 from sd/master
151+
10709cd Merge pull request #86 from baroquebobcat/use_file_path_separator_instead_of_rbconfig
152+
ac92625 use File::PATH_SEPARATOR instead of RbConfig
153+
23d77ef use java 1.6 bytecode. the recompiled jar didn't work for me with 1.5
154+
10b2b18 warn users instead of outputting "...done" when nothing actually occurs
155+
4033268 partial fix for issue #23 don't ICE when parsing after a node verify error
156+
6ea2da8 remove rescue around dev bitescript require
157+
d105b97 use bundler to manage dev dependencies
158+
7a3127e use right date formatting
159+
7cb39eb try to help them know what is happening better
160+
0f5287a make it more explicit what compile mode means
161+
8cb8e41 Fix bootstrapping
162+
14559d3 Fix method lookup for java.lang.Class objects
163+
bde76f8 Merge branch 'newast'
164+
16db63e Fix bugs with interfaces and error types
165+
778ec51 Fix strange transform error
166+
7c76776 Merge pull request #80 from baroquebobcat/closure_fix_2
167+
7f83fb0 fix closure scope issue, javac issue
168+
0c4ea99 Macro enhancement
169+
705a907 Macro enhancement
170+
e395169 Add a class mirror to the NullType
171+
4cff3f8 nodes
172+
00d223d Fix block return values
173+
2fed449 Merge commit '6b3ce537'
174+
6b3ce53 test for creating anonymous class method that uses no args and returns a value
175+
489d4aa Updates to current invokedynamic logic.
176+
af717c6 Add an Unreachable JVM type
177+
46a1bea Merge branch 'master' of github.com:mirah/mirah
178+
c4c8afb Fix begin...rescue with no body
179+
73172c8 Try to ignore assignments to nil during type inference
180+
e2e5c56 Fix rescue block inference
181+
a073480 Fix link to issue tracker.
182+
681c274 Add support for rescue - else. Fix bug with rescue when the body always raises an exception but the rescue clauses return a result.
183+
d486090 More efficient new_hash macro
184+
b78e3a8 Macro bugfixes.
185+
fa40e47 Add missing .java parser
186+
237f16c Fix line numbers in debug info
187+
9b163c0 Add support for circular references between java and mirah files
188+
726ad63 Merge branch 'master' of github.com:mirah/mirah
189+
d974e04 Fix typo
190+
8c2bffa Fix #31: mirahc -h regression
191+
fac6bd5 Fix #44: Failure on 'rake gem'
192+
ac79807 corrected reference for "jar:bootstrap" in Rakefile
193+
1d07018 Present an error when using -j/--java with non-compile commands. Fixes #62.
194+
9dc3345 Ensure the JVM type has been initialized before calling methods on it in JVM::Types::Type. Fixes #65.
195+
551deac Use catch/throw to terminate the compiler early, since SystemExit bubbles out MirahCommand and makes noise. Fixes #66.
196+
fb401fa Fix bad call to compile_asts (does not need transformer now).
197+
961551d Add missing cast to Integer.
198+
d43cfc7 Fix -V and error processing
199+
4b67a11 Merge
200+
cf4f2de Small changes to README feature list.
201+
1d003c5 clean the pom file
202+
521bbd9 Add a trivial example Maven project that uses the Maven plugin.
203+
88838bc add maven release process readme
204+
8f37529 update pom descriptors to pass maven release requirements
205+
5c7a690 Fix a couple vars I missed in mirah.bat and mirahc.bat.
206+
59409a1 Add missing .bat files to dist.
207+
bb39a69 Put .zip contents into a mirah-VERSION directory (d'oh!).
208+
e12fbe8 Fix references to duby scripts in gemspec and trim out wiki from examples (for size).
209+
a395dbf Make zip task depend on jar:complete again.
210+
4e89a03 Add examples dir to zip distribution.
211+
7c06633 Oops. Add missing distbin dir with bin scripts for the zip distribution.
212+
690f82b Add zip, gem, and dist targets to Rakefile, to build a zip'ed distribution, gem file, and everything.
213+
53d8e16 Restore lost destination when writing compiled output.
214+
3b181f5 Back off on overzealous trimming of @state; it's still used a few places I can't eliminate.
215+
b0c6ce8 Remove out-of-date duby and jrubyp-related commands.
216+
963140c Remove duby.gemspec. We're done with this, yes?
217+
5b923e5 Move mirah/jvm/base to mirah/jvm/compiler/base
218+
c89ed22 Move JVMCompilerBase to Base.
219+
cd1ae11 Move JVM bytecode compiler to appropriate file structure.
220+
b27a57a Move JVMBytecode and JVMCompilerBase to Mirah::JVM::Compiler namespace.
221+
ffc2d18 Move Mirah::Compiler::JVM to Mirah::Compiler::JVMBytecode
222+
3d510fb Move jvm/source_compiler.rb into jvm/compiler/java_source.rb
223+
a28852a Move Mirah::Compiler::JavaSource to Mirah::JVM::Compiler::JavaSource
224+
8ff25a5 Move Mirah::Typer::JVM to Mirah::JVM::Typer
225+
0809140 Refactor jvm/types.rb into jvm/types subdir files.
226+
898cb63 Refactor transform and transform2 into transform/{ast_ext,error,helper,transformer}.
227+
e68eb22 Refactor typer.rb into typer/base and typer/simple.
228+
a05e503 Forcibly nuke randomly-named xform classes generated during test_javac_compiler.
229+
0da5b73 Missed a few ClassLoader and CompilationState references.
230+
e357957 Move a few more classes under util and clean up some requires.
231+
fd2f0bf More OO decomposition of Mirah command-line logic and compiler/generator/parser workflow.
232+
5762c5d Restructure commands into their own classes and files.
233+
3075d8e Reorg main three entry points into Mirah command a bit.
234+
c129e57 Add .DS_Store to .gitignore
235+
db7aa1e Restructure compiler.rb into mirah/compiler subdir, mirroring mirah/ast subdir.
236+
330a1c2 Add a simple example of declaring an interface.
237+
723416f Add covariance for one-dimensional arrays (see #55). Multi-dimensional arrays still need work.
238+
356d896 Roll versions to 0.0.8{.dev,-SNAPSHOT).
239+
3b6bb81 Fixed an issue with mirah_task
240+
ebd0ab2 Add casting support to the Call node.
241+
1242
=== 0.0.7 / 2011-03-20
2243

3244
248368c Fix assignability of dynamic type; only target of Object should be allowed.

NOTICE

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,31 @@
11
# This file is automatically generated from the git commit history
22
# by tools/gen_authors.sh.
33

4+
Amitava Shee <amitava.shee@gmail.com>
45
Anthony Richardson <anthony@anthonyrichardson.com>
6+
Attila Szegedi <szegedia@gmail.com>
57
Bob Zoller <bob@zoller.us>
8+
Brendan Ribera <brendan.ribera@gmail.com>
69
Charles Oliver Nutter <headius@headius.com>
710
consiliens <consiliens@gmail.com>
11+
Daniel Jackoway <danjdel@gmail.com>
812
David Calavera <david.calavera@gmail.com>
13+
Hamlet D'Arcy <hamletdrc@gmail.com>
914
headius@cnutter.local <none@none>
1015
headius@localhost <none@none>
1116
headius <none@none>
1217
Ian Dees <undees@gmail.com>
18+
Justin Bradford <jabradford@gmail.com>
1319
Marko Kocic <marko.kocic@gmail.com>
1420
Nathan Weizenbaum <nex342@gmail.com>
1521
Nick Howard <ndh@baroquebobcat.com>
1622
Nick Howard <nick@gnipcentral.com>
1723
Phil Hagelberg <technomancy@gmail.com>
24+
ribrdb <ribrdb@gmail.com>
25+
rogerdpack <rogerpack2005@gmail.com>
1826
Ryan Brown <ribrdb@gmail.com>
1927
Ryan Brown <ribrdb@google.com>
28+
Sebastian Delmont <sd@notso.net>
2029
Sébastien Le Callonnec <sebastien@weblogism.com>
30+
Thomas Lee <me@tomlee.co>
2131
xraid <xraid@iprobot.com>

README.txt

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
= mirah
22

33
* http://groups.google.com/group/mirah
4-
* http://code.google.com/p/mirah/issues/list
4+
* http://github.com/mirah/mirah/issues
55

66
== DESCRIPTION:
77

@@ -39,16 +39,11 @@ $ gem install mirah
3939

4040
To build and install from source,
4141

42-
$ git clone http://github.com/headius/bitescript.git
4342
$ git clone http://github.com/mirah/mirah.git
44-
$ cd bitescript
45-
$ gem build bitescript.gemspec
46-
$ gem install bitescript-*
47-
$ cd -
4843
$ cd mirah
44+
$ bundle install
4945
$ rake gem
50-
$ gem install pkg/mirah-*
51-
$ cd -
46+
$ gem install pkg/mirah-*.gem
5247

5348
== For Java tools:
5449

0 commit comments

Comments
 (0)