Oracle Launches Project Valhalla for Java

by Ben Evans on  Jul 28, 2014 12

Oracle launches Project Valhalla to experiment with advanced features for the JVM and Java language, including a major revision of Java's approach to generic types.

PHP Evolved: Facebook's New Hack Programming Language

by Jeff Martin on  Mar 27, 2014 1

PHP has long filled an important role at Facebook, and over the years the company has constantly sought to improve the language's performance. First there was the Hip Hop Virtual Machine, and now there is the Hack, programming language.

Rust 0.9 Released With Revised Threading Model

by Jeff Martin on  Jan 16, 2014

The Rust team has released the latest version of its next generation programming language. New in this release is a redesigned threading system and several refinements as the language moves towards its 1.0 release.

Study: Clojure, CoffeeScript and Haskell Are the Most Expressive General-purpose Languages

by Abel Avram on  Mar 28, 2013 12

According to a study, the most expressive general-purpose languages are Clojure, CoffeeScript and Haskell. The study uses LoC/commit as the measuring unit of expressiveness.

Research into Uniqueness and Reference Immutability for Safe Parallelism in C#

by Jonathan Allen on  Dec 07, 2012

Some big names from Microsoft, Microsoft Research and the University of Washington have been working on a new variant of C# that introduces the concept of readable and immutable references at the language level. To this effect each reference has one of four permission qualifiers that modify variables and parameters: writable, readable, immutable, and isolated.

Ruby 2.0 Preview 1 Released, Final Release in February 2013

by Mirko Stocker on  Nov 06, 2012

Ruby 2.0's release manager Yusuke Endoh announced the first preview release of Ruby 2.0 and a targeted release in February 2013. InfoQ talked to Yusuke to learn more about the big new features of Ruby 2.0 (Refinements, keyword arguments, Enumerator#lazy, and more) and what users need to know when upgrading.

A Proposal for Non-Nullable Types in C#

by Jonathan Allen on  Oct 02, 2012

Since .NET was still in beta developers have been asking for non-nullable variables with reference semantics. But the problem is far more complicated than simply slapping an attribute or other decoration on the variable. Craig of Twisted Oak Studios has proposed a solution to some of the problems.

Interview on Rust, a Systems Programming Language Developed by Mozilla

by Abel Avram on  Aug 03, 2012 3

Rust is a systems programming language developed by Mozilla and targeted at high performance applications. This post contains an interview with Graydon Hoare, Rust’s creator.

Trying to Answer the Question: Why Some Languages Succeed While Others Fail?

by Abel Avram on  Jun 23, 2012 2

Two researchers at UC Berkeley have investigated programming languages adoption from a sociological perspective. This article summarizes their research and includes an interview with the authors.

D1 is Being Discontinued in 2012

by Jonathan Allen on  Dec 13, 2011 3

Digital Mars, makers of the C++ alternative D, have decided to discontinue the original version of D. They had been maintaining D1 along with its successor D2 since 2007, but with the later now well established they feel it is no longer appropriate to dedicate resources to the older language past December 2012.

Google Dart Roundup: Dart to JS Compiler Frog, Pre-Built Editor/IDE Binaries, Type System Proposals

by Werner Schuster on  Nov 17, 2011

Pre-built versions of Dart Editor, the Eclipse-based Dart IDE, are now available, making it easy to try Dart. Frog is a new Dart to Javascript compiler - written in Dart by the creator of the Jython and IronPython projects. Meanwhile the Dart team has been busy explaining the Dart language and proposing features to round out the type system, eg. nullable types and more.

Google Dart Language and Tools Announced - Dynamic Language, Optionally Typed, Familiar Syntax

by Werner Schuster on  Oct 10, 2011 10

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.

Java Lambda Syntax based on C#, Scala

by Alex Blewitt on  Sep 09, 2011 5

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."

An Overview of the X++ Programming Language

by Jonathan Allen on  Aug 08, 2011 1

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 for LINQ to Objects

by Jonathan Allen on  Jul 28, 2011 3

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.