Google has announced a new language: Google Dart and tools. The language and tools are currently considered a technology preview, and an open source release is available now. The language is not yet in Chrome. Dart is dynamic, optional types and reified Generics. Concurrency uses Erlang-style processes called Isolates, share nothing with async message passing.
A recent posting on the lambda-dev mailing list announced the conclusion that the Java Lambda syntax will be based on C# syntax, very similar to Scala's implementation that many are already familiar with: "It was better to choose something that has already been shown to work well in the two languages that are most like Java – C# and Scala – rather than to invent something new."
X++ is a 17 year old programming language with a syntax that meshes the structural and imperative features of Java with the set-based operations of SQL. It is primarily used within Dynamics AX, an enterprise resource planning platform. Originally a completely proprietary language, as of 2009 X++ can be compiled to .NET’s Intermediate Languages.
Interactive Extensions (Ix) is a set of additional LINQ to Objects query operators based on the work done in the Reactive Extensions. A quick look through the API reveals a set of IEnumerable extension methods under the System.Linq namespace. While most developers already have many of these in their own utility libraries, having a standard implementation for these missing features would be useful.
D is a systems programming language from Digital Mars that focuses on “combining the power and high performance of C and C++ with the programmer productivity of modern languages like Ruby and Python.” While still being a statically typed language that compiles directly to native code, the syntax looks very much like Java or C# but it has some interesting advances.
Creating a new JVM based language has recently hit the for with the news of the proposed Ceylon project. In fact, the JVM already has a diverse set of languages, both statically typed and dynamically typed. What does it take for a new language to hit the mark?
Gavin King, creator of Hibernate, gave a presentation at QCon Beijing on the Ceylon JVM language. Ceylon addresses some limitations of the Java programming language although the project is near the inception phase, with no compiler or IDE support. Since its existence leaked out over twitter, there has been a lot of speculation about the language; read on to find out more from Gavin King
Erlang Co-creators, Joe Armstrong and Robert Virding, admit that Erlang is heavily inspired by the Java world. In an interview at ErlangFactory 2011 SF, they reveal how Scala Actors had shaped their work in what they then called Erlang Processes. Moreover, they acknowledge the fact that Erlang's VM is barely a clone of the famous JVM.
While Mono usually strives to follow the C# and Common Language Infrastructure specifications, it does occasionally go beyond them. While some features such as SIMD support are backwards-compatible with .NET, runtime supported continuations are exclusive to Mono.
Mono had a dirty little secret. Until recently it used the portable but woefully inaccurate Boehm-Demers-Weiser conservative garbage collector. After two long years of work Mono is making the shift to a new generational garbage collector that is specific to the CLR and far more precise than anything they’ve had before.
The first RC for JRuby 1.6 is out and brings improved Ruby 1.9.2 compatibility, experimental C extensions support, improved Windows support, Ruby Gems Maven support, performance and profiling improvements and more. InfoQ talked to JRuby's Charles Nutter about JRuby 1.6, the impact of Java 7 on JRuby, new language features in Ruby and much more.
The rather extensive runtime library used by Visual Basic and its compiler has been a major stumbling block for the language. Both the Windows Phone 7 and the XBox 360 don’t support the library, making clumsy workarounds necessary. With Visual Basic 10 SP 1, Microsoft once again tries to get it right.
The new Async CPT for VB and C# looks like it may actually make it into the core language. But with all the emphasis on multi-core systems, why is Microsoft investing so heavily in syntax for designed specifically for making single-threaded asynchronous programming easier?