Author Archives: Juan

About Juan

Responsible for technical developments at Habla Computing

Shape-dependent computations in Scala … and Agda!

In this post we will solve a little programming problem, mainly with the excuse of talking about dependent types. As usual, Scala will be our programming language of choice. However, this time we will also use Agda, a programming language … Continue reading

Posted in Uncategorized | Leave a comment

From “Hello, world!” to “Hello, monad!” (part III/III)

In the first part of this series, we saw how we can write the business logic of our applications as pure functions that return programs written in a custom domain-specific language (DSL). We also showed in part II that no matter … Continue reading

Posted in Embedded DSLs, functional programming | Tagged , , | 1 Comment

From “Hello, world!” to “Hello, monad!” (Part I)

This is the first instalment of a series of posts about the essence of functional programming. The only purpose of this series is to illustrate the defining features of this style of programming using different examples of increasing complexity. We will start with the ubiquitous “Hello, world!” … Continue reading

Posted in functional programming, Scala | Tagged , | 3 Comments

The Speech Console

During these months, we have tried to explain Speech using different strategies and metaphors, with varying results. For instance, we have defined Speech as “A process-oriented programming language” or as “A DSL for programming the business logic of social applications” … Continue reading

Posted in Apps, Speech, Web console | Leave a comment

Sample Speech Apps: Twitter, Trac, Do&Follow … and Big Brothapp!

Which kinds of applications are most suitable for Speech? How do we design a Speech app? How do we implement a Speech design using its Scala embedding? To answer these questions in a pleasant and entertaining way, we completely re-designed … Continue reading

Posted in Apps, Speech | Leave a comment

Speech 0.1 released!

We are happy to announce the first release of the Speech interpreter. This is a beta release with the minimum functionality required to test significant application examples, demonstrate the virtues of the Speech DSL and … receive feedback from you! … Continue reading

Posted in Uncategorized | Leave a comment

Updating immutable objects in generic contexts

Immutability is one of the hallmarks of functional design, and writing idiomatic programs in Scala highly relies on manipulating immutable objects. Now, if we don’t have mutable fields (aka vars) … how can we update objects in a convenient way? … Continue reading

Posted in case classes, immutability, Macros, Scala, Speech, Type Class, Updatable | 1 Comment