Skip to content

Software Engineering Radio

The Podcast for Professional Software Developers

Archive

Tag: python

Recording Venue: QCon 2007
Guest(s): Simon Peyton Jones

Host(s): Markus
We start our discussion with a brief look at what Haskell is and how a pure functional language is different from non-pure languages. We then look at the basic building blocks and the philosophy of the language, discussing concepts such as the lambda calculus, closures, currying, immutability, lazy evaluation, memoization, and the role of data types in functional languages. A significant part of the discussion is then spent on the management of side effects in a pure language – in other words, the importance of monads. We conclude the episode with a look at Haskell’s importance and community today.

Links:

Play

Recording Venue: OOPSLA 2006
Guest(s): Niclas Nilsson
Host(s): Markus
In this Episode we talk about dynamic languages for statically-typed minds, or in other words: which are the interesting features people should learn when they go from a langauge such as Java or C# to a language like Python or Ruby. We used Ruby as the concrete example language.

We started the discussion about important features with the concept of dynamically changing an object’s type and the idea of message passing. We then looked at the concepts of blocks and closures. Next in line is a discussion about functions that create functions as well as currying. This lead into a quick discussion about continuations. Open classes, aliasing and the relationship to AOP was next on our agenda.

We then looked considered a somewhat more engineering-oriented view and looked at the importance of testing and what are the best steps of getting from static programming to dynamic programming. Finally, we discussed a bit about the current (as of October 2006) state of dynamic languages on mainstream platforms.

Links:

Play

Recording Venue:
Guest(s):
Host(s): Alexander Markus
Recording Venue:
Guest(s):
Host(s): Alexander Markus
In this Episode, Alexander and Markus talk about scripting languages. Topics include the definition of what a scripting language is, typical usage scenarios, performance issues, programming styles and IDE support. In later Episodes we will talk about more specific topics, such as dynamic typing, reflection, functional programming as well as specific languages such as Ruby.

Links:

Play