Entradas

Mostrando entradas de octubre, 2018

The Roots of Lisp

This week we made an analysis on the article “The Roots of Lisp” by Paul Graham. I thoroughly enjoyed this article because for mi it’s like an origin story for the most powerful programming languages out there. And it also makes a point of how by understanding the past of this language, you are also understanding the future of programming languages. In this article, Graham tries to explain how the first published version of Lisp works by tearing its basic functions and attributes apart and explaining each of them by separate. First he starts with the seven primitive functions (quote,   atom, eq, cons, car, cdr and cond), and show how each of this functions perform super basic operations on the attributes that are passed to them. It’s very interesting to see that every operation that you want Lisp to perform can be done with just combinations of this primitive functions. Then he tells us about the notation for describing our own functions, and how this notation allows us t

The promises of functional programming.

This week’s entry is about an article by Konrad Hinsen called “The Promises of Functional Programming”. I really liked reading this particular article because I’m currently working on parallel programming and found what Hinsen had to say about that interesting, but more on that later. Hinsen also makes note of the way functional programming works just like math, where you have a function that given the same input will give the same output. I’m finding this kind of programming really cool (maybe because it’s way more related to my field where there are lots of applied maths), at first it felt weird programming without all the variables, but after I got the hang of it, I think having functions without side effects is way more practical. What I still can’t get my head around is what everyone says about the functions being data, I don’t see how that can be relevant, but I hope in time I’ll see what all that is about. Now, about the parallel programing. When I first got into p