Hiya! I hail from Portugal, and I'm a years old software engineer currently living in Northern Ireland.
I'm most experienced with C# and Scala. In my spare time, I hack in Haskell and dabble in PureScript and Idris.
I have a Master's degree in Informatics and Computing Engineering and I currently work at SpotX.
An AI for the 2048 game using minimax and alpha-beta pruning, as described by John Hughes in the paper "Why Functional Programming Matters". Written in Haskell and Yesod. Deployed on AWS using Docker.Haskell, Yesod, Websockets, Docker
Csi-init is a command line tool written in Haskell, which lets you launch Roslyn's C# REPL ("csi") preloaded with all the assemblies found in one or more directories.Haskell, C#, Roslyn
Sequences is a port of Scala's Stream[+A] to C#. A Sequence<T> is an immutable lazy list whose elements are only evaluated when they are needed. It is composed by a head (the first element) and a lazily-evaluated tail (the remaining elements).C#, Scala, memoization, immutability, data-structures
A concurrent lock-free deque (double-ended queue) implementation in C# - push/pop/peek operations in constant time O(1) - and a regular deque implemented as a ring buffer.C#, concurrency, data-structures
JSend.WebApi extends ASP.NET Web API 2's ApiController and enables easy generation of JSend-formatted responses. JSend.Client complements the controller, by providing an easy way to send HTTP requests and parse JSend-formatted responses.C#, Web API
An alternative approach to the Memento design pattern. Through reflection, the container takes a snapshot of your objects' state, so that you can easily rollback when recovering from errors or implementing an "undo" mechanism.C#, design-patterns
Metro Tasks is a productivity application for Windows 8 / Windows RT that helps you keep track of your to-do's. The app features synchronization with Google Tasks, type to search, tile and lock screen updates.C#, WinRT