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.
One year after hitting 1.0, Elixir 1.1 is out. It brings new public APIs, performance improvements, and tooling improvements. InfoQ has spoken with José Valim, Elixir’s creator.
Ionide, based on the Atom Editor, is a suite of packages that aim to provide a full-featured, modern, cross-platform, open-source IDE for F# development. InfoQ has talked with Ionide’s creator, Krzysztof Cieślak.
At Strange Loop 2015, Richard Feldman gave an overview of how using Elm in production has sped up his team's development cycle and improved the quality of their app.
Recently released Python 3.5 brings a host of changes, including several new syntax features, new library modules, and improvements to the standard library and to security.
Bazel, the build system that Google open sourced six months ago, has reached the first beta milestone as planned, adding support for several languages and technologies.
Mads Torgersen, C# language program manager at Microsoft, has recently outlined a proposal for the introduction of option types for references in C# 7. Option types are meant as a means to make the language safer and reduce the occurrence of null reference exceptions, which, as Torgersen says, are rampant in C# since any reference type can reference a null value.
Frege, named after the German mathematician Gottlob Frege, is a purely functional, strongly typed language for the JVM that is so similar to Haskell that “most idiomatic Haskell code will run unmodified or with only minimal, obvious adaptions”. InfoQ has spoken with Ingo Wechsung, Frege’s creator.