InfoQ Homepage Functional Programming Content on InfoQ
-
Reactive Programming as an Emerging Trend
Reactive programming (RP) is based on data flows and the propagation of change, with the underlying execution model of a programming language automatically propagating changes through the data flow. With the popularity of event-driven, scalable, and interactive architectures both on the server and the client, the concept of “reactiveness” is increasingly gaining attention.
-
Scaling Twitter to New Peaks
For many of us Twitter has become an essential communications utility. Since experiencing scalability problems in 2010, Twitter has moved to a loosely coupled service oriented architecture based on the JVM, allowing it new levels of scalability and feature agility. Twitter engineering recently reported a new record throughput and took time out to describe their new architecture.
-
High Performance Immutable Arrays in .NET
In the newest drop of Immutable Collections for .NET we get ImmutableArray<T>, a faster alternative to ImmutableList<T> in read-only scenarios. Also, Jon Skeet offers some interesting performance trivia for arrays on the CLR.
-
Compile Scala to JavaScript With Scala.js
At the Scala Day last week, Sébastien Doeraene presented Scala.js, a Scala to JavaScript compiler. The compiler supports the full Scala language allowing its users to build web applications front to back in Scala and potentially reuse code between the server and the client.
-
The Database as a Value
During QCon New York 2013, Rich Hickey gave a talk on functional databases. Hickey is well known for creating the Clojure programming language and is currently developing Datomic, which is a functional database. During his talk, Hickey argued that the useful properties of functional languages: data as values and pure functions, are just as useful in the context of databases.
-
Making Immutable Object Graphs Easier in C#
Creating a simple immutable class in C# is easy, but eventually you’ll want to create deep graphs that, for efficiencies sake, should be created via a builder. Or perhaps you want to make non-destructive updates by creating methods. Building out all these builders and methods can be quite tedious and thus error prone. Andrew L Arnott offers a solution that relies on T4 based code generators.
-
More on Immutable Collections in .NET
Since we last reported on Immutable Collections in January, the API has evolved and a lot more has been revealed about the inner workings.
-
Erlang/OTP R16B Brings Improved Parallelism
The newley released Erlang/OTP R16B brings several performance enhancements among its new features. Code modules can now be loaded in a non-blocking manner, networking code for ports has been improved, and VM processes have been parallelized.
-
Chef 11 is Ready for Hyperscale
Opscode released Chef 11 early this month with enhancements to its scalability to meet the demands of hyperscale web operations. Opscode rewrote the entire server core API in Erlang and at the same time kept it backward compatible. Opscode renamed the core server API "Erchef" to complement the rewrite in Erlang.
-
Is C Still A Suitable Language Today?
Damien Katz, Couchbase, believes that C is still a great language for back-end programming, while other developers argue that C has too many flaws, supporting C++ or Java, while others like neither.
-
ZeroTurnaround Launches New Java Research and Content Organisation
ZeroTurnaround, the vendor behind the popular JRebel and LiveRebel JVM plugins, which accelerate the Java development cycle and automate app deployments to live environments without downtime, have announced a new research and content organisation called Rebel Labs. The organisation will, they claim, offer free, vendor-neutral technical resources for the Java community.
-
.NET Goes Immutable
One of the most common misunderstandings in .NET development is the idea that variables of type IEnumerable or ReadOnlyCollection are thread-safe. In order to offer truly thread-safe collections for scenarios where you would be tempted to use IEnumerable or ReadOnlyCollection, Microsoft’s Base Class Library (BCL) team is offering a preview of a new set of immutable collections.
-
JetBrains Releases IntelliJ IDEA 12
JetBrains has announced IntelliJ IDEA 12 having a better compiler, support for Java 8, an Android UI Designer, a new look, better Spring and Play 2.0 support, and a large number of enhancements across supported languages and frameworks.
-
Community-Driven Research: What's Your Next JVM Language?
InfoQ's research initiative continues with an 12th question: "What's Your Next JVM Language?". This is a new service we hope will provide you with up-to-date & bias-free community-based insight into trends & behaviors that affect enterprise software development. Unlike traditional vendor/analyst-based research, our research is based on answers provided by YOU.
-
Twitter’s Shift from Ruby to Java Helps it Survive US Election
Twitter's infamous Fail Whale was absent on US presidential election day, even as Twitter's servers were handling a serge of 327,452 "tweets" per minute. The firm was able to handle this level of traffic thanks in part to a gradual shift away from Ruby to Java and Scala