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

  • Immutable.js Offers JavaScript a Taste of Functional Programming

    Immutable.js provides JavaScript with a set of persistent data structures allowing for a functional programming style while using natural syntax familiar to traditional JavaScript developers.

  • Survey Finds Clojure Adoption Progresses Year-to-Year

    Cognitect has recently published the results of a community survey aimed at finding out "how and for what Clojure and ClojureScript are being adopted, what is going well and what could stand improvement." According to Cognitect, though not a scientific survey, it shows how Clojure has "transitioned from exploratory status to a viable, sustainable platform for development at work."

  • How Immutable State Helped Facebook to Improve Its iOS App Architecture

    Facebook has been working in the last two years to evolve the architecture of its iOS app with the goal of improving performance, abstractions, and the underlying development model. Adam Ernst and Arl Grant, software engineers at Facebook, explained what issues they had to solve and how they did in a @Scale 2014 talk.

  • Emerging Languages: A Look at The Last Five Years

    In a recent article, Alex Payne, organizer of the Emerging Languages Camp, provides insight on how the language landscape has changed in the last five years and how it might change in future. InfoQ has talked with him.

  • PureScript: A Haskell-like Language that Compiles to JavaScript

    PureScript is a strongly, statically typed language which compiles to JavaScript. It is written in and inspired by Haskell and aims at "allowing to write very expressive code which is still clear and readable" when translated into JavaScript. Furthermore, says PureScript creator Phil Freeman, PureScript provides interoperability with other languages which target JavaScript.

  • Scala Compiler Sees Two Forks in One Week

    A week after floating the idea of a community sponsored fork of Scala, Miles Sabin, principal engineer of the shapeless library and active member of Typelevel, announced a fork of the Scala compiler on the Typelevel blog. Three days later, Paul Phillips, a Typesafe co-founder who left the company in 2013, announced his own Scala compiler fork.

  • The Future of Scala

    The Scala Team recently published a "Scala: Next Steps" article describing the future of the language, and detailing the features of the next three major Scala releases and main goals: to make the language and its libraries simpler to understand, more robust, and better performing.

  • Racket 6.1 Released

    PLT Design has released version 6.1 of Racket, its general purpose, multi-paradigm programming language belonging to the Lisp/Scheme family. Racket 6.1 introduces a new way of handling local recursive variable definitions and several other language features.

  • Experiences Building a Reactive Event-Driven CQRS Application

    CQRS and Event Sourcing provide a clear and concise way to build distributed applications that adhere to the reactive manifesto, Duncan DeVore claimed in a recent presentation sharing his experiences building a distributed application using Akka and Scala.

  • F# Native App Development on iOS and Android

    F# has supported both iOS and Android native programming through Xamarin since at least Xamarin 4.8 and can be efficiently used to create native apps on both platforms. Let's give a look at some experience reports.

  • Streams Library Brings Lazy Evaluation and Functional-style to C++14

    Streams is a C++14 library that provides lazy evaluation and functional-style transformations on the data, to ease the use of C++ standard library containers and algorithms. Streams support many common functional operations such as map, filter, and reduce. InfoQ interviews Streams' author.

  • rest: Open Source REST Framework For Haskell

    Silk has recently open-sourced a REST framework for Haskell, called "rest". It provides a DSL for defining REST services which can then be run in popular web frameworks such as happstack. This comes with features such as type-safe URLs, abstraction of format-type support, and a clean separation of API specification and business logic.

  • Facebook Open-sources Haxl: Implicit, Concurrent Data Access Using Haskell

    Facebook has open-sourced Haxl, a library for efficient, concurrent data-access. The library leverages the traditional strengths of Haskell such as expressive type system, correctness and safety guarantees, as well as GHC's high performance run-time to solve the thorny issue of implicit, concurrent data access.

  • Play 2.3 Released: Modularization, Java 8 and WebJars

    The Play 2.3 release increases modularization of the framework by separating parts from the framework. Also, the Play shell has been replaced by Activator, which includes a browser UI and project templates. InfoQ also talked to Play tech lead James Roper to learn more about the changes and futures plans.

  • Functional Patterns in Domain-Driven Design

    Implementing Domain-Driven Design (DDD) concepts using object orientation principles with state and behaviour often gives you a muddled mutable model, instead building domain objects with only state and behaviour as standalone functions leads to a better realization, Debasish Ghosh claims in a recent blog post.

BT