Tag: Common Lisp
In an earlier article I had explained how to execute Python code from within Common Lisp using “CLPython” package. In contrast to that approach, “Hy” is a Lisp-style language (not compatible with Common Lisp) that is embedded in Python and hence provides seamless interoperability with Python code. Installation is straightforward (it is usually a good idea to […]
The zip() function in Python is a convenient mechanism for iterating over multiple “iterables” in parallel. Looping over lists is a common scenario. Here is the output generated by the above code: Common Lisp does not have such a feature built into the language or as part of the standard library. Of course, we have […]
In the last article, I had shared my views on why programmers should learn Prolog, preferably as the first language. What language should one learn next? I strongly pitch for Lisp, to be precise, “Common Lisp”. Lisp happens to be the second oldest (1958) programming language, only after Fortran (1957)! Initially there were several dialects […]
Eager Future2 is a Common Lisp library that facilitates parallel computation. It is based on the idea of a “future” that acts as a “proxy” for a concurrently computed expression. Unlike the “lparallel” library that I had discussed in the last article, this library does not give us control over the number of “worker threads” […]
Title: The Common Lisp Condition System: Beyond Exception Handling with Control Flow Mechanisms Author: Michał “phoe” Herda Publisher: Apress Year: 2020 Unlike with other languages, it is rare to find new books being published on Lisp. The last book on Lisp, which I purchased was “Common Lisp Recipes” by Edmund Weitz in March 2016. After a […]
In my earlier article Calling Go Functions from Lisp, I explained the steps for making calls to Go functions from another language, specifically LispWorks Lisp. Today, I want to give a slightly more interesting example showing the use of Go channels through exported functions. Go is widely admired for its native support for concurrency via Goroutines. […]
The two primary areas in Natural Language processing are Natural Language Understanding and Natural Language Generation. The former is concerned with processing and making sense of natural language text, whereas the latter is concerned with synthesizing text, possibly from some deep representation. Both are fascinating and at the same time, challenging, areas of research. The […]
Recent Comments