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

  • Should you really learn another language?

    Blogger Gustavo Duarte cursed in church when he said that learning new programming languages is often a waste of time. He said that "In reality learning a new language is a gritty business in which most of the effort is spent on low-value tasks with poor return on time invested.". But not everyone agreed.

  • F# 1.9.4 Available Now with Important Updates

    Microsoft released an new version of its F# compiler, version 1.9.4. A version more polished and simplified.

  • Is it time to abandon loops?

    With the addition of LINQ, extension methods, and improved anonymous delegates, many algorithms no longer need explicit loops. In a post titled "If you are using a loop, you're doing it wrong", Chuck Jazdzewski looks at a possible future for C#.

  • Presentation: Scala: Bringing Future Languages to the JVM

    In this presentation, Lex Spoon discusses the Scala programming language. Topics covered include the origin of Scala, the philosophy behind Scala, the Scala feature set, Object-Oriented and Functional programming in Scala, examples of Scala code, writing DSLs, how Scala is converted into Java, Scala performance, Abstract Data Types, unapply, actors and partial functions.

  • Programming Languages: More Powerful with Less Freedom?

    In quest for more power, languages are often grown with new features. While it provides programmer with more freedom, does this actually achieve more power? Reg Braithwaite believes that this is not necessarily true and argues that it is possible to render language more powerful yet limiting options offered to programmers.

  • Debate about Testing and Recoverability: Object Oriented vs. Functional Programming Languages

    In his latest blog post, Michael Feathers argued that object oriented programming languages offer some built-in features that facilitate testing and are therefore more recovery friendly than functional languages. Proponents of functional languages expressed strong disagreement with this statement, which provoked a very passionate debate in the blog community.

  • Communicating Intent through Idiom and Paradigm Selection

    What about using idioms and programming conventions as signals to achieve more readability and expressiveness? This is what Reg Braithwaite advocates for, suggesting that syntax or even paradigm choices can be a means to communicate the intent.

  • Get a Grasp on Expression Trees

    Developers familiar with functional programming languages might not need an explanation as to why expression trees are useful. For the rest of us expression trees are the most striking concept of all the new features in C# 3.0 or VB 9.0.

  • Tapping method chains with Ruby 1.9

    Ruby 1.9 adds a method to all objects: tap. This method allows to elegantly inspect data that flows through chained method calls. We look at how it's implemented at where it's helpful.

  • WPF and F#

    Yesterday we told you about using PHP.NET with Silverlight. The GUI framework for Silverlight, WPF, represents the future of Windows development. So it is understandable that F# developers would be looking at it with a keen eye as well.

  • Mads Torgersen: C# Futures

    Floyd interviews Mads Torgersen at JAOO and they discuss the future of C# and the LINQ additions.

  • Borrowing Functional APIs from F#

    The Common Language Specification ensures that any conforming .NET language can access libraries created by any other language. This means imperative languages like VB and C# can call functional libraries created primarily for F#. In fact, many can be converted directly into C# code.

  • Designing for flexibility and robustness: Asynchronous message model, OOP and Functional Programming

    According to Pragmatic Programmers it is preferable in OOP to avoid design based on returning values. Michael Feathers argues that it may also be better to use the asynchronous message model that might be instrumental for improving adaptability and robustness. This maps well to the Erlang model though opposing some of the principles of pure functional programming.

  • Article: Beyond Foundations of F#

    Since Robert Pickering published Foundations of F# in May, the language has grown significantly. Besides adding a host of new features, it is being moved from a research project to a fully supported, production-grade release. We asked Robert to discuss some of the new features in F#.

  • F# to Be Integrated With Visual Studio

    Somasegar has announced that F# will be integrated with Visual Studio, joining Managed C++, C#, and Visual Basic as a first class on the .NET platform.

BT