Rick Hickey
really impressed me in this potcast when he started talking about the details of Clojure's
implementation of “mutable…ish” data and how he made it happen within the
problematic that is the Java Virtual Machine in terms of resources, although
the JVM has become more and more efficient within the newer versions; but in
that sense the creation of a resource-efficient data structures certainly
deserves a lot of admiration from me or anyone that nowadays dedicates its
career to data-science because it takes a very clever mind to abstract all
those models.
Clojure is
presented to you as a new paradigm or tool for your career or projects it can
sound super difficult or creepy in the way of syntax complexity, but the truth
is that once you dominate it, it becomes another “weapon” in the duty of any
computologyst or computer systems engineer.
Clojure is
an amazing and powerful language because it is the (almost) perfect link between
the objects-oriented paradigm and the unknown (at least for me at the beginning)
Functional Programming paradigm as it runs mainly using the Java Virtual
Machine, which is platform agnostic by design. Which provides the program a set
of data structures and utility functions that can be nonexistent or very
difficult to implement into a cleaner implementation of Lisp. Hickey mentioned
that Vectors and Maps are unique to Clojure, and it certainly is an interest in
terms of the relationship between them and vectors and bijective mappings in
the mathematical sense.
One of the
most important barriers in Functional programming from an object-oriented
perspective is the lack of variables or directly manipulable data. In my
opinion once you overcome this barrier, you can take a really good advantage of
all the benefits of it; just like the integrity of information through the
function-chain as it does make you a better programmer overall.
Comentarios
Publicar un comentario