After 8 years of development, Lisp Flavoured Erlang (LFE) has reached version 1.0, bringing stable support for Lisp programming on the Erlang virtual machine (BEAM). LFE was created by Robert Virding, one of the initial developers of Erlang. InfoQ has spoken with Duncan McGreggor, current maintainer of LFE.
Jinq, a library to provide a DSL for database queries, has been made available for Java and Scala. The work is inspired by .NET's LINQ, and aims at enabling easy-to-write queries with support for type safety. As commented by Ming-Yee Iu, creator of the tool, work on Jinq started in 2006 under project name Queryll; however, the adoption of lambdas in Java 8 is what has realised its full potential.
Last week, the Scala Center was created as a not-for-profit foundation, along with a list of financial backers, to improve the ongoing development of Scala and provide training courses based around the Scala language.
The company formerly known as Typesafe, inventors of the Scala programming language, has completed their renaming and is now known as Lightbend. Typesafe announced their plans to rename last May, stating at that time that it was expected to be a two month process. They invited community members to participate, and provided blog updates about their progress.
Racket, a multi-paradigm programming language belonging to the Lisp/Scheme family, has reached version 6.4, PLT announced. The new version adds several new features, including an incremental garbage collector (GC), and fixes a vulnerability in the web server.
San Francisco-based programmer Edgar Aroutiounian has recently created a package for OCamliOS, an OCaml cross-compiler for iOS recently made available by Jeffrey A. Scofield that should eventually be merged into the official OCaml compiler. InfoQ has spoken with Aroutiounian.
Architecting a scalable and dynamic system without caching is explained by Peter Morgan, head of engineering for the sports betting company William Hill. The values of the bets on sporting events change constantly. No data can be cached; all system values must be current. Distributed Erlang processes model domain objects which instantly recalculate system values based on data streams from Kafka.
José Valim has announced version 1.2 of the dynamic, functional Programming language Elixir. Valim, creator of Elixir, says the release "brings enhancements, bug fixes, performance improvements and more," noting that it requires at least Erlang 18+.
PLT Design has announced Racket 6.3, the newest version of its multi-paradigm programming language belonging to the Lisp/Scheme family. Racket 6.3 introduces a new macro expander, an improved Redex DSL, and support for GTK3 among other things.
A new Strict language extension to Haskell aims to make it easier to use Haskell for code that is meant to be mostly strict, i.e., evaluated in a non-lazy manner. The feature was recently merged into GHC’s git HEAD and will be included in GHC’s next release.
At GoTo 2015, Erik Meijer, computer scientist whose name is linked to functional programming and reactive asynchronous programming, recounted the last couple of years in his life, including his cancer diagnosis and how it changed his way of looking at life, and shared his view on the Hacker’s Way.
JetBrains has released IntelliJ IDEA 15, with improved Java 8 lambda debugger support, a better user interface for running tests, enhanced JVM frameworks support (Spring 4.2, Hibernate 5.0, Grails 3.x, and Arquillian), TypeScript 1.6 and TSLint integration, and initial support for Angular 2.
Dotty, a platform aimed to develop new technology for Scala tooling as well as try out new concepts for future Scala versions, has reached bootstrap status. This means that its compiler is written in Dotty and can compile itself, thus providing a drop-in replacement for the original one. InfoQ has spoken with Dotty major contributor Dmitry Petrashko.
JAX London 2015, which took place from 12th to 15th October at the Business Design Centre in London, United Kingdom, gathered many of the experts in the areas of Java, Microservices and other modern development practices. Although the topics were varied, the overall message seemed to indicate both that these technologies are maturing, and that users are learning to use them more effectively.