Rich Hickey explains the ideas behind Clojure 1.2's new polymorphism constructs deftype and protocols. Also: Clojure 1.3 features such as faster arithmetic and future features like Pods.
In this interview, Google’s Josh Bloch shares his views on the open-source Java landscape as well as on the future of the Java language, including changes being implemented via Project Coin. Bloch also discusses support for multi-core in programming languages, support for multiple languages on the JVM, Java pain points and the “next big language.”
In this interview from the Erlang Factory event in London, three creators of modern functional languages -- Martin Odersky, creator of Scala; Joe Armstrong, a creator of Erlang; and Don Syme, creator of F# -- discuss the similarities and differences of their creations. They also discuss their languages’ common thread -- that they integrate object-oriented features in functional languages.
Functional programming experts Simon Thompson and John Hughes discuss functional programming in today’s computing environments, particularly through the use of the Erlang and Haskell languages. In addition to debating the intricacies of both languages and their similarities and differences, Thompson and Hughes also discuss the growing popularity and maturity if functional programming.
Ralph Johnson and Joe Armstrong discuss their ideas about parallel programming - whether shared memory is harmful, the place of message passing, fault tolerance, the importance of protocols and more.
Ralph Johnson and Joe Armstrong discuss the state of OOP, what Smalltalk got right/wrong and the image concept. Also: Joe decides he likes OOP as long as its done the Erlang way: focused on messaging.
Dan Ingalls explains the ideas that went into Smalltalk, how it was developed at Xerox PARC, the ideas that went into Squeak, and his latest project the browser-based Lively Kernel.
Joe Walker explains the browser-based source editor Bespin: the architecture and implementation, the collaboration features, new ideas for command lines, Canvas vs DOM, speed, extensibility, and much more.
Udi Dahan talks about Command Query Responsibility Segregation (CQRS) and its relationship to Domain Driven Design (DDD). Dahan also discusses his project, the NServiceBus. NServiceBus is an open-source service bus for Microsoft's .NET environment. In many ways, NServiceBus works like Microsoft's Windows Communication Foundation (WCF) and can be used instead of WCF in some cases.
John Hughes is the author of “Why functional programming matters” paper and in this interview he outlines the merits of functional programming and the reason for his involvement with it. He also goes over several core principles of functional programming like monads, handling of side-effects, etc.
Jim Coplien, co-creator of Data, Context and Interaction (DCI) architecture, covers a variety of topics including DCI, the importance of language support for DCI and the state of Agile development. Coplien has championed the DCI architecture with Trygve ReensKaug, the inventor of the Model-View-Controller (MVC) architecture, which separates data and its processing from presentation.