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

  • Is OOP Better for Structuring your Code?

    Programming languages that offer more power and flexibility have been lately gaining momentum. Johnatan Tang highlights, however, the flexibility vs. productivity tradeoff in terms of program structure. Whereas multi-dispatch languages provide more flexibility in arranging code, traditional object orientation makes organizing programs easier.

  • Interview: Joe Armstrong About Erlang

    In this interview filmed during QCon London 2008, Joe Armstrong, designer of Erlang, speaks on various aspects of the Erlang language, presenting its roots, how it compares with other languages and why it has become popular these days due to its native ability to scale on multi core systems.

  • Anders Hejlsberg and Guy Steele on Concurrency and Language Design

    An interview recorded at JAOO, Anders Hejlsberg and Guy Steele talk about concurrency in language design. Anders Hejlsberg is the chief architect of C#, creator of Turbo Pascal, and former chief architect of Delphi. Guy Steele is the creator of Scheme and is currently working on Sun's Fortress, a programming language that focuses on parallelism and mathematics.

  • Using Closures to Improve API Design and Usage

    Some APIs such as those that perform complex parsing often expose intermediate results via events. As Eric White demonstrates, closures can be used to greatly simplify calling these APIs.

  • F# Update: MonoDevelop, a New Book, and a New CTP

    Though still officially just a research project, the excitement over F# continues unabated. In today's roundup, we take a brief look at what's new for F#.

  • Iterators for VB

    Visual Basic's Paul Vick recently revealed a proposal to add iterators in a yet named version. While meant to address the same use cases as C#'s yield return statement, the proposal looks more like something out of a function programmer's playbook.

  • Lambda Expression Improvements for VB

    For VB developers it is a toss-up for the most frustrating thing about anonymous functions. Paul Vick is currently discussing two of them, anonymous subroutines and multi-line anonymous functions.

  • Presentation: Erlang - software for a concurrent world

    We get more and more cores in our CPUs, but does our software run linearly faster? In most cases - no. We've hit a trend change when it comes to faster CPUs. We'll get more and more cores, but each core will be slower as the number of cores increase. In his talk, Joe Armstrong introduces Erlang and the ideas of Concurrent Oriented Programming which is one way to solve the problem.

  • 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.

BT