Building a LISP from scratch with Swift

February 5, 2017

This article describes how you can build a simple LISP, based on the 1978 article 'A Micro Manual For LISP - Not The Whole Truth' with Swift, taking advantage where possible of the features the language offers.

Swift 3.0.2 For Raspberry Pi Zero/1/2/3

December 30, 2016

Swift for all the Raspberry Pi boards, built on Ubuntu16.04 for RaspberryPi 2/3 and on Raspbian for the original RaspberryPis (A,B,A+,B+).

Unowned or Weak? Lifetime and Performance

October 27, 2016

While the usual explanation that when dealing with retain cycles you should choose between unowned or weak considering references lifetime is by now well known, sometimes you are still in doubt about which one you should actually use between the two and if defensively using only weak references is a good idea. This article helps you choose which one to use discussion about object lifetimes and weak references performance.

Recursive Tail Calls and Trampolines in Swift

May 5, 2016

The use of recursion can improve the overall design of your algorithms but it leaves you susceptible to stack overflows if the compiler is unable to perform specific optimizations. In this post we'll see what tail recursion and TCO are and how the use of trampolines can overcome the fact that we cannot rely on the Swift compiler performing tail call elimination.

Swift And C: Everything You Need to Know on Types, Pointers and more

April 7, 2016

Now that Swift is available on Linux and other OSes, there are even more situations where you could need to interact with C code from your Swift 3 application. This article will hopefully shed some light on the most non-obvious details and give you some practical examples and tips of how to interact with C APIs like the C standard library.

A Recap of the Swift Porting Efforts #2

March 11, 2016

Since the first installment of this series a few established ports have received updates and a few new things have finally landed on master. Let's recap what happened in the last month on the front of porting Swift on other platforms.

Swift 3.0 now available for all the ARMv6 RaspberryPi (1,Zero)

March 10, 2016

After the Swift 2.2 binaries, you can now download Swift 3.0 compiled for ARMv6 single board computers, all models of RaspberryPi 1 and the new Zero.

This is the blog of Umberto Raimondi, you can reach me at me@this domain.

I'm also on Twitter and GitHub.

Subscribe via RSS or email.