December 23rd, 2009
I am very happy to announce that Ioke P has finally been released!
Ioke is a language that is designed to be as expressive as possible. It is a dynamic language targeted at the Java Virtual Machine. There also exists a version for the CLR. It’s been designed from scratch to be a highly flexible general purpose language. It is a prototype-based programming language that is inspired by Io, Smalltalk, Lisp and Ruby.
Homepage: http://ioke.org
Download: http://ioke.org/download.html
Programming guide: http://ioke.org/wiki/index.php/Guide
Wiki: http://ioke.org/wiki
The two specific releases that encompass Ioke P are ikj 0.4.0 and ikc 0.4.0.
Ioke P is the fourth release of Ioke. It includes many new features compared to Ioke E:
- Number Infinity
- eval
- Reflector
- Hooks
- First class Runtime
- New parser
- Tuples
- Structs
- Destructuring assignment
- Message rewriting
- Functional composition
- Sequences
- Dictionary and Set versions of Enumerable methods
- Enumerable group, Enumerable groupBy
- Set operations for union, intersection, membership, subset and superset testing
- ISpec stubbing and mocking
- IIk history
- DokGen on separate projects
Ioke P also includes a large amount of bug fixes.
Features:
- Expressiveness first
- Strong, dynamic typing
- Prototype based object orientation
- Homoiconic language
- Simple syntax
- Powerful macro facilities
- Condition system
- Aspects
- Java integration
- Developed using TDD
- Documentation system that combines documentation with specs
- Runs on both the JVM and the CLR
The many things added in Ioke P could not have been done without the support of all the Ioke contributors. Thank you!
Regards
Ola Bini – ola.bini@gmail.com
4 Comments | By Ola Bini | In: ioke | tags: ikc, ikj, ioke, ioke P, release. | #
May 7th, 2009
I have just released version 0.4 of JtestR. This version doesn’t really provide any new features – instead it contains updates to all included libraries, upgrading JRuby to 1.2 being the most important one.
More information here: http://jtestr.codehaus.org.
No Comments | By Ola Bini | In: blogging | tags: jruby, jtestr, release, rspec, testing. | #
April 21st, 2009
The last two weeks I’ve been furiously coding away to be able to do this. And I’m finally at the goal. I am very happy to announce that the first release of Ioke for the CLR is finished. It runs on both Mono and .NET.
Ioke is a language that is designed to be as expressive as possible. It is a dynamic language targeted at several virtual machines. It’s been designed from scratch to be a highly flexible general purpose language. It is a prototype-based programming language that is inspired by Io, Smalltalk, Lisp and Ruby.
Homepage: http://ioke.org
Download: http://ioke.org/download.html
Programming guide: http://ioke.org/wiki/index.php/Guide
Wiki: http://ioke.org/wiki
Ioke E ikc is the first release of the ikc Ioke machine. The ikc machine is implemented in C# and F# and run’s on Mono and .NET. It includes all the features of Ioke E ikj, except for Java integration. Integration with .NET types will come in another release.
Features:
- Expressiveness first
- Strong, dynamic typing
- Prototype based object orientation
- Homoiconic language
- Simple syntax
- Powerful macro facilities
- Condition system
- Aspects
- Runs on both the JVM and the CLR
- Developed using TDD
- Documentation system that combines documentation with specs
There are several interesting pieces in ikc. Among them I can mention a new regular expression engine (called NRegex), a port of many parts of gnu.math, providing arbitrary precision math, and also an implementation of BigDecimal in C#.
4 Comments | By Ola Bini | In: ioke | tags: .net, c#, f#, ikc, ioke, release. | #
April 5th, 2009
After a slightly longer development cycle then the last time, I am finally happy to announce that Ioke E has been released.
Ioke is a language that is designed to be as expressive as possible. It is a dynamic language targeted at the Java Virtual Machine. It’s been designed from scratch to be a highly flexible general purpose language. It is a prototype-based programming language that is inspired by Io, Smalltalk, Lisp and Ruby.
Homepage: http://ioke.org
Download: http://ioke.org/download.html
Programming guide: http://ioke.org/wiki/index.php/Guide
Wiki: http://ioke.org/wiki
Ioke E is the third release of Ioke. It includes many new features from Ioke S, among them full support for Java integration (including implementing interfaces and extending classes), many new methods in the core libraries, IOpt, TextScanner, BlankSlate, better support for regexp interpolation and escapes in regexps, support for Unicode analysis and much more.
Ioke E also includes a large amount of bug fixes.
Features:
- Expressiveness first
- Strong, dynamic typing
- Prototype based object orientation
- Homoiconic language
- Simple syntax
- Powerful macro facilities
- Condition system
- Aspects
- Java integration
- Developed using TDD
- Documentation system that combines documentation with specs
- Wedded to the JVM
The many things added in Ioke E could not have been done without the support of several contributors. I would like to call out and thank:
T W <twellman@gmail.com>
Sam Aaron <samaaron@gmail.com>
Carlos Villela <cv@lixo.org>
Brian Guthrie <btguthrie@gmail.com>
Martin Elwin <elvvin@gmail.com>
Felipe Rodrigues de Almeida <felipero@gmail.com>
Wes Oldenbeuving <narnach@gmail.com>
Martin Dobmeier <martin.dobmeier@googlemail.com>
Victor Hugo Borja <vic.borja@gmail.com>
Bragi Ragnarson <bragi@ragnarson.com>
Petrik de Heus
5 Comments | By Ola Bini | In: ioke | tags: ioke, ioke e, programming language design, programming languages, release. | #
January 23rd, 2009
Exactly one month after the first release of Ioke, I am very happy to announce that Ioke S has been released. It has been a team effort and I am immensely pleased with the result of it.
Ioke is a language that is designed to be as expressive as possible. It is a dynamic language targeted at the Java Virtual Machine. It’s been designed from scratch to be a highly flexible general purpose language. It is a prototype-based programming language that is inspired by Io, Smalltalk, Lisp and Ruby.
Homepage: http://ioke.org
Download: http://ioke.org/download.html
Programming guide: http://ioke.org/guide.html
Ioke S is the second release of Ioke. It includes a large amount of new features compared to Ioke 0. Among the most important are syntactic macros, full regular expression support, for comprehensions, aspects, cond and case, destructuring macros, and many more things.
Ioke S also includes a large amount of bug fixes, and several example programs.
Features:
- Expressiveness first
- Strong, dynamic typing
- Prototype based object orientation
- Homoiconic language
- Simple syntax
- Powerful macro facilities
- Condition system
- Aspects
- Developed using TDD
- Documentation system that combines documentation with specs
- Wedded to the JVM
The many things added in Ioke S could not have been done without the support of several new contributors. I would like to call out and thank:
T W <twellman@gmail.com>
Sam Aaron <samaaron@gmail.com>
Carlos Villela <cv@lixo.org>
Brian Guthrie <btguthrie@gmail.com>
Martin Elwin <elvvin@gmail.com>
Felipe Rodrigues de Almeida <felipero@gmail.com>
2 Comments | By Ola Bini | In: ioke | tags: ioke, ioke s, programming language design, programming languages, release. | #
August 28th, 2008
It’s late and I don’t have time to write something witty about this. This is the release announcement:
JRuby 1.1.4 is the fourth point release of JRuby 1.1. The fixes in this
release are primarily obvious compatibility problems and performance
enhancements. Our goal is to put out point releases more frequently for
the next several months (about 3-4 weeks a release). We want a more
rapid release cycle to better address issues brought up by users of JRuby.
Highlights:
– Massive refactoring of Java integration layer
– 2-20x speed up of most features (calls, construction, arrays)
– Many long-standing Ruby/Java interaction bugs fixed
– Existing features made more consistent, reliable
– Closures can be passed as interface to static methods, constructors
– Java exceptions can be raised/rescued directly from Ruby
– Massive memory efficiency improvements (a lot less GC)
– Beginning of Ruby 1.9 support (enabled with –1.9 flag)
– Native complex/rational
– Additional efficiency, performance work in the interpreter
– Memory leak under –manage repaired
– FFI subsystem for calling C libraries
– syslog module from Rubinius is working and included
– win32 API support started
– Thread pooling improved (at least one production user now)
– Array concurrent-access improvements
– 72 issues resolved since JRuby 1.1.3
Issues fixed:
JRUBY-231 Provide attr_reader, attr_writer, and attr_accessor for JavaBean style getters & setters
JRUBY-1183 New closure conversion should prefer methods with convertable args over those without
JRUBY-1300 Masquerading of native Java exceptions
JRUBY-1326 Error invoking overloaded Java constructor
JRUBY-1562 Declaration of certain method name (setJavaObject(Xxx x)) will throw an exception using BSF
JRUBY-1615 Raising java exceptions from ruby causes TypeError
JRUBY-1707 Unable to raise Java exceptions of derived types
JRUBY-1735 Java Integration wraps to much
JRUBY-1839 closure conversion fails for blocks
JRUBY-1964 Determine what test/specs are needed to be written in order to refactor java integration post 1.1
JRUBY-1976 Working with JavaMethods doesn’t work.
JRUBY-2136 $VERBOSE = true; require ‘tmpdir’ gives non-fatal Java exception
JRUBY-2192 YAML parser does not appear to deserialize object types.
JRUBY-2204 Syslog module is not available for JRuby
JRUBY-2236 NPE in isDuckTypeConvertible
JRUBY-2287 Storing ruby objects in java classes instances
JRUBY-2377 Wrong line numbers for ArgumentError for Java calls
JRUBY-2429 Cannot Catch Core Java Exceptions From JRuby Internals in Ruby Code
JRUBY-2439 Trying to subclass a Java class from a signed .jar will crash on you.
JRUBY-2449 Implement closure convention for static java methods
JRUBY-2561 JavaField.set_value(foo, nil) breaks
JRUBY-2673 Java exceptions do not return the wrapped exception when getStackTrace is called
JRUBY-2680 When JIT Compiler compiles the append_features in the ruby\site_ruby\1.8\builtin\javasupport\proxy\interface.rb the compiled code slows down by a factor of 10
JRUBY-2741 OSGify jruby.jar in the release jruby distribution
JRUBY-2749 Make RaiseException show the exception message and the Ruby stack trace
JRUBY-2803 Bad performance calling Java classes
JRUBY-2823 Can’t reference Java’s constants that start with a lower case character
JRUBY-2828 Rational#% differs from MRI when argument is negative
JRUBY-2843 Issues with BasicSocket#close_read
JRUBY-2847 A non-existant jar + dir on the load path causes require to error
JRUBY-2850 In some cases, reopened Java objects cannot find methods on Ruby objects subclassed from Java
JRUBY-2854 AST offset error for StrNode and DStrNode
JRUBY-2857 Coercion error with public member variables
JRUBY-2863 Nested Interfaces can’t find the correct method when Java calls Ruby
JRUBY-2865 Can’t extend a class in default package
JRUBY-2867 Wrong overloaded Java method called when both int and float signatures exist
JRUBY-2869 IO.select fails to block with nil timeout
JRUBY-2870 [REGRESSION] Converting a Ruby array to a Java array (of Object references) broken
JRUBY-2872 JSpinner cannot accept Fixnum for it’s value
JRUBY-2873 FFI needs a way to specify call convention
JRUBY-2874 TCPSocket#new and TCPServer#new crash JRuby when the specified port is out of range (negative or bigger than 65k)
JRUBY-2879 net/ftp library is broken if mathn is also loaded
JRUBY-2880 Regression: 17 new RubySpec failures and 3 unit tests falirues caused by r7327 (Array changes)
JRUBY-2881 JAVA_HOME with () breaks JRuby on windows
JRUBY-2882 Incorrect subclass for constructor arg throws internal JRuby error
JRUBY-2886 Extending a final Java class should be rescuable as a normal Ruby exception type
JRUBY-2890 UDPSocket.recvfrom should block until something is available
JRUBY-2891 UDPSocket.bind throws a Java Error when already bound on Java 5
JRUBY-2892 JRuby releases use random copies of joni svn HEAD
JRUBY-2893 mspec runs need to pass properties through -T argument for compilation, etc
JRUBY-2894 When spec runs fail, Ant is not terminating with a failure message
JRUBY-2899 Using JavaEmbedUtils.rubyToJava causes problems when passing RubyObject-derived parameters back in to Ruby code
JRUBY-2903 Allow implementing Java interfaces with underscored method names
JRUBY-2905 NoMethodError does not give a useful message when thrown in BSF
JRUBY-2906 IOError message is garbled when java.io.IOException message is multi-byte character.
JRUBY-2907 method_missing invocation paths end up boxing arguments twice, among other inefficiencies
JRUBY-2910 Object#send is not specific-arity
JRUBY-2915 Exception construction performance is poor
JRUBY-2918 jruby 1.1.3 + activescaffold 1.1.1 generating RJS error
JRUBY-2919 Time.-(Time) does not include microseconds and is off by 10
JRUBY-2923 Eliminate (unknown) from trace elements
JRUBY-2924 JMX support added leaks memory like crazy
JRUBY-2927 Calling interface method on specific instance from Java doesn’t work.
JRUBY-2928 Same issue with hashCode and toString for Interfaces.
JRUBY-2929 Java Integration with regards to arrays of classes are broken
JRUBY-2931 Templater error causes merb-gen (0.9.4 and trunk) to fail on JRuby 1.1.3
JRUBY-2932 Move static soft reference timezone cache to be runtime-specific cache to remove complexity of dealing with soft references
JRUBY-2938 Calling JavaUtil.convertJavaToUsableRubyObject throws AssertionError
JRUBY-2943 Memory leak in closure coercion
JRUBY-2944 Java caller gets null when calling a method on a Ruby object implementing an interface method declared to return Object[], and the Ruby object returns an array of Ruby objects subclass of Hash converted with #to_java
JRUBY-2946 New invokers attempt to access argument list of non-overloaded methods with incorrect arity
JRUBY-2947 Multidimensional array conversion broke in recent Java integration refactoring
Not too bad, is it? Now go find out more at http://www.jruby.org, and download at http://dist.codehaus.org/jruby/
No Comments | By Ola Bini | In: Uncategorized | tags: 1.1.4, jruby, release. | #
August 17th, 2008
JtestR allows you to test your Java code with Ruby frameworks.
Homepage: http://jtestr.codehaus.org
Download: http://dist.codehaus.org/jtestr
JtestR 0.3.1 is the current release of the JtestR testing tool. JtestR integrates JRuby with several Ruby frameworks to allow painless testing of Java code, using RSpec, Test/Unit, Expectations, dust and Mocha.
Features:
– Integrates with Ant, Maven and JUnit
– Includes JRuby 1.1, Test/Unit, RSpec, Expectations, dust, Mocha and ActiveSupport
– Customizes Mocha so that mocking of any Java class is possible
– Background testing server for quick startup of tests
– Automatically runs your JUnit and TestNG codebase as part of the build
Getting started: http://jtestr.codehaus.org/Getting+Started
New in the 0.3.1 release is upgrade of JRuby to revision r7479 which includes several new Java Integration features, upgrading of ActiveSupport to 2.1.0, fixing a severe memory leak in the background server and some minor usability features.
New and fixed in this release:
JTESTR-50 Difference in functionality when stubbing a method on a Java class vs a Ruby class using mocha
JTESTR-51 Mocking of classes lacking default constructors results in a NameError
JTESTR-53 Push the JtestR JRuby builds to maven repos
JTESTR-56 Upgrade ActiveSupport
JTESTR-57 Make it possible to use local versions of libraries.
JTESTR-59 No output when no tests found.
JTESTR-60 OutOfMemoryError
JTESTR-61 Documentation improvments – ant test-server
JTESTR-62 Having the jtestr.jar in the base directory doesn’t work
JTESTR-63 Update JRuby version
No Comments | By Ola Bini | In: Uncategorized | tags: jruby, jtestr, release. | #
June 15th, 2008
JtestR allows you to test your Java code with Ruby frameworks.
Homepage: http://jtestr.codehaus.org
Download: http://dist.codehaus.org/jtestr
JtestR 0.3 is the current release of the JtestR testing tool. JtestR integrates JRuby with several Ruby frameworks to allow painless testing of Java code, using RSpec, Test/Unit, Expectations, dust and Mocha.
Features:
– Integrates with Ant, Maven and JUnit
– Includes JRuby 1.1, Test/Unit, RSpec, Expectations, dust, Mocha and ActiveSupport
– Customizes Mocha so that mocking of any Java class is possible
– Background testing server for quick startup of tests
– Automatically runs your JUnit and TestNG codebase as part of the build
Getting started: http://jtestr.codehaus.org/Getting+Started
The 0.3 release has focused on stabilizing Maven support, and adding new capabilities for JUnit integration.
New and fixed in this release:
JTESTR-47 Maven with subprojects should work intuitively
JTESTR-42 Maven dependencies should be automatically picked up by the test run
JTESTR-41 Driver jtestr from junit
JTESTR-37 Can’t expect a specific Java exception correctly
JTESTR-36 IDE integration, possibility to run single tests
JTESTR-35 Support XML output of test reports
Team:
Ola Bini – ola.bini@gmail.com
Anda Abramovici – anda.abramovici@gmail.com
No Comments | By Ola Bini | In: Uncategorized | tags: java, jruby, jtestr, release. | #
November 1st, 2007
The JRuby community is pleased to announce the release of JRuby 1.0.2.
Homepage: http://www.jruby.org/
Download: http://dist.codehaus.org/jruby/
JRuby 1.0.2 is a minor release of our stable 1.0 branch. The fixes in this
release include primarily obvious compatibility issues that we felt were
low risk. We periodically push out point releases to continue supporting
production users of JRuby 1.0.x.
Highlights:
- Fixed several nasty issues for users on Windows
- Fixed a number of network compatibility issues
- Includes support for Rails 1.2.5
- Reduced memory footprint
- Improved File IO performance
- trap() fix
- 99 total issues resolved since JRuby 1.0.1
Special thanks to the new JRuby contributors who rose to Charlie's challenge
to write patches for some outstanding bugs: Riley Lynch, Mathias Biilmann
Christensen, Peter Brant, and Niels Bech Nielsen. Welcome aboard...
1 Comment | By Ola Bini | In: Uncategorized | tags: 1.0.2, jruby, release. | #
June 9th, 2007
The JRuby community is pleased to announce the release of JRuby 1.0!
Homepage: http://www.jruby.org/
Download: http://dist.codehaus.org/jruby/
JRuby 1.0 is a major milestone for our project. Our main goal for 1.0 has been
Ruby compatibility. We feel this goal has been reached. When we see
companies like ThoughtWorks offering commercial support; we know this goal
has been reached. Please download JRuby and take it for a test drive. Try
running your Ruby and Ruby on Rails applications with it.
Give us feedback. Join our community. Help us continue to improve JRuby.
It is important to notice that JRuby 1.0 is not the end all of Ruby interpreters. It’s not perfect. This is just the beginning. We now have a very good base to work from. This is were the real work begins. Join us. It will be a fun ride, and JRuby will just get better!
8 Comments | By Ola Bini | In: Uncategorized | tags: 1.0, jruby, release. | #