BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Functional Programming Content on InfoQ

  • A Proposal to Add Option Types for References to C# 7

    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: a Haskell-like Language for the JVM

    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.

  • GameAnalytics Open-Source Erlang Scheduler for Distributed Tasks

    GameAnalytics, maker of a free analytics platform, has recently open sourced gascheduler an Erlang library that provides a generic scheduler for parallel execution of distributed tasks. InfoQ has spoken to Chris de Vries, one of gascheduler’s creators.

  • F# 4.0 Released for All Platforms

    F# 4.0 has been released for the big three major platforms (Windows, Mac OS X, and Linux). F# 4.0 brings a host of new features, bug fixes, and performance improvements that benefit users of the language whether or not they are writing code in Visual Studio 2015.

  • JRuby 9000 Released Featuring Ruby 2.2 Compatibility

    JRuby released version 9000, the ninth release of the popular implementation of Ruby for the Java Virtual Machine. InfoQ speaks to Charles Oliver Nutter co-lead of the JRuby project and senior engineer at Red Hat about the release and about Ruby in general.

  • Clojure 1.7 Introduces Transducers, Improves Cross-platform Support

    Transducers and reader conditionals are the two most important new features in Clojure 1.7, says Cognitect’s Alex Miller. Transducers aim to enable composable algorithmic transformations on different kinds of collections, while reader conditionals can be used to improve Clojure portability across the JVM and JavaScript platforms.

  • Apple to Open Source Swift Language

    Apple has announced at WWDC 2015 that they will open-source Swift 2.0 under a permissive open-source license, the object-oriented/functional language released at last year's WWDC, and the standard libraries and compilers will run on iOS, OSX and Linux. Furthermore Apple has simplified the developer programs, allowing developers to build iOS, OSX and watchOS applications with the same membership.

  • Play 2.4 Moves to Dependency Injection and Java 8

    Typesafe's Play team has released version 2.4 "Damiya" of their web framework. By embracing dependency injection, the refactoring towards better modularization that was started in 2.3 has continued in this release. Play 2.4 requires Java 8 and uses Lambdas and Default Methods in Play's Java-API.

  • Slick 3: Reactive Streams for Asynchronous Database Access in Scala

    Slick, Typesafe's database query and access library for Scala, now supports the Reactive Streams API in the just released version 3.0. This enables developers to query their databases asynchronously and non-blocking. InfoQ talked to Slich Tech-Lead Stefan Zeiger to learn more about the new features and what they've planned for the future.

  • Scaling Microservices at Gilt with Scala, Docker and AWS

    At Craft Conference 2015, Adrian Trenaman discussed the evolution of the Gilt.com architecture from a monolithic Ruby on Rails application to a cloud-based microservice ‘lots of small applications’ platform utilising Scala, Docker and AWS. Trenaman shared both technical and organisational lessons learnt from the past eight years, as Gilt has grown from a startup to a $1B company.

  • Maven Escapes from XML

    The recently released Maven 3.3.1 adds support for core extensions to be added to a project through additional metadata as well as using alternatives to the eponymous pom.xml file for building. This has been used to create build scripts for JRuby that build upon Maven but use a JRuby script to represent dependencies and plugins.

  • Microsoft Open Sources Cross-platform Serialization Library – Bond

    Last month, without any official announcement, Microsoft open sourced Bond - a performant serialization system developed and deployed across dozens of mission-critical, high-scale infrastructure projects internally at Microsoft.

  • Reimplementing TeX's Algorithms: Looking Back at Thirty Years of Programming

    Glenn Vanderburg, director of engineering at LivingSocial, gave an interesting recount of his effort to implement TeX’s algorithms in Clojure at the last ClojureConj conference. In the process, he discovered how much programming has changed in the last thirty years.

  • Improve your Programming Skills with Exercism.io

    Exercism.io helps developers to increases their craftsmanship in a language through feedback and discussion. It’s a community and tool where developers can write code and discuss it to strengthen their problem-solving skills. InfoQ did an interview with the creator of exercism Katrina Owen and with Richard Thomson who contributed the C++ language track for exercism.

  • Typesafe survey: Java 8 Adoption Strong, Users Anxious for Java 9

    InfoQ reviews the results of the recent Typesafe survey of Java developers, focusing on the adoption of Java 8, and talks to Typesafe co-founder Jonas Bonér about the impact on Scala adoption for Java developers.

BT