Show HN: A Lisp where each function call runs a Docker container
1–10 of 30 posts
Re: Show HN: A Lisp where each function call runs a Docker container
#2I'm impressed GitHub managed to handle this beast:
https://github.com/a11ce/docker-lisp/actions/runs/2216831271...
500+ container invocations to compute factorial(3)
Re: Show HN: A Lisp where each function call runs a Docker container
#3This is the most ridiculous thing I've ever seen and I love it.
Re: Show HN: A Lisp where each function call runs a Docker container
#4This is a nightmare XD
Re: Show HN: A Lisp where each function call runs a Docker container
#5well, sure, that uses a large number of processing cycles for each small operation. But asking a frontier LLM to evaluate a lisp expression is more or less on the same scale (interesting empirical question whether it's more or less). And, if we count operations at the brain neuron level it would take to evaluate one mentally....
Re: Show HN: A Lisp where each function call runs a Docker container
#6This is the most ridiculous thing I've ever seen and I love it.
So scalable! If you need to execute more functions just scale horizontally!
Re: Show HN: A Lisp where each function call runs a Docker container
#7Re: Show HN: A Lisp where each function call runs a Docker container
#8This is the most ridiculous thing I've ever seen and I love it.
Just my thoughts. Love that people do just because they want to do. Love it.
Re: Show HN: A Lisp where each function call runs a Docker container
#9The best kind of absurd experiment, pushing the limits of technology and reason, just to see if it can be done. The adventurous spirit of "What if?" and "Why not!" I love when such an idea is implemented seriously, like having a CI action to test a factorial function. I shudder at its monstrous beauty.
Is there a spark of practical potential? It's intriguing to imagine, how a Docker-like container could be a language primitive, as easy to spin up like a new thread or worker. Not sure what advantage that'd bring, or any possible use case. It reminds me of..
2.1 Xappings, Xets, and Xectors
All parallelism in Connection Machine Lisp is organized around a data structure known as the zapping (pronounced “zapping,” and derived from “mapping”). Xappings are data objects similar in structure to arrays or hash tables, but they have one essential characteristic: operations on the entries of xappings may be performed in parallel.
Thinking Machines Technical Report PL87-6. Connection Machine Lisp: A Dialect of Common Lisp for Data Parallel Programming. https://archive.org/details/tmc-technical-report-pl-87-6-con...Re: Show HN: A Lisp where each function call runs a Docker container
#10My first thought was a simple wrapper macro, but this is way more impressive and way more fun.