From: David P G. <gr...@us...> - 2008-12-12 19:21:58
|
An initial binary release of the C++ backend for X10 is now available. We have also made matching source and binary releases of the Java backend. For details on the releases, including direct links to download them, please see the release web page at http://x10.codehaus.org/X10+1.7.2.0 +Release. Please read the release notes for the C++ backend appended below before trying it. The C++ backend is less mature than the Java backend and we are actively working on improving it for an upcoming 1.7.2.1 release. For a current list of known issues with the 1.7.2.0 C++ backend, see the X10 JIRA: http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=true&&fixfor=14762&pid=11812&sorter/field=issuekey&sorter/order=DESC&sorter/field=priority&sorter/order=DESC&sorter/field=status&sorter/order=ASC Release 1.7.2 This release is the first to include the C++ code generation backend. The C++ backend is not as mature as the Java backend, so expect some rough edges. Your patience is appreciated. We will be working to fix the known issues in the subsequent releases. Please use JIRA (link at the bottom) to report bugs, after ensuring the problem is not already reported. This release of the Experimental Concurrent Programming Language (X10) supports the following additional features (since Release 1.5): - Generic classes and interfaces - Function types and closures including methods with type parameters - Type definitions - Local type inference - Scala-like syntax Additionally, bug fixes have been made throughout the system. The following features described in the 1.7 language manual do not currently work with the Java backend and will be fixed in the subsequent releases: - Type parameters on closures - Non-static type definitions as class or interface members (static type defs do work) - Type definitions as package members (i.e., in the outermost scope of a compilation unit) - AST externalization to XML - Shared local variables - Extern methods Additionally, the following features described in the 1.7 language manual do not currently work with the C++ backend and will be fixed in the subsequent releases: - Garbage collection - Generic virtual methods - Invocation of virtual methods from constructors - Finally blocks that modify or access local variables - Exception stack traces on Cygwin and AIX Here's a list of known issues with the C++ backend: - Default values are not assigned to some value types - Static initialization is sometimes incorrectly ordered (at the moment it's very brittle, though somewhat controllable by the link order of files) - Operator overloading does not work correctly sometimes - Hash codes are not computed correctly for some classes - Out of memory errors not thrown (an assertion is tripped instead) - Code generation errors for value assignments and closures in generics |