Dogalog: A realtime Prolog-based livecoding music environment
https://github.com/danja/dogalog
#HackerNews #Dogalog #Prolog #livecoding #music #environment #realtime #music #technology #innovation
https://gitlab.com/b2495/fleng
A compiler for the concurrent logic programming languages FGHC, Strand, KL1 and PCN.
I've completed "Christmas Tree Farm" - Day 12 - Advent of Code 2025 #AdventOfCode https://adventofcode.com/2025/day/12
#Prolog code, most of which is fiddling with the inputs!
@khinsen Thanks for your encouragement! Whereas I'd at first thought of Maslow's hierarchy as just a basic pattern to follow, I now think there may be a kind of 'isomorphism' here:
Physiologic Needs: any part of the analytic pipeline (from data to results) that isn't fully scripted à la #reproducibleresearch is effectively DEAD.
Safety Needs: scripts not under source control, unstructured analysis data sets (spreadsheets≈crime), and indeed all unnecessarily imperative pipeline elements (e.g., shell scripts instead of makefiles) create an UNSTABLE and UNSAFE environment for analytic work. (Where applicable, safeguarding sensitive data also belongs in this tier.)
Love & Belonging: code reviews, documentation [incl. tests, pace Dijkstra], preregistration, conference presentations, preprints, and peer review at all stages of the work; using and crediting community-contributed software.
Esteem: contributing reusable code, bug reports, bug fixes, etc. to a community of scientific software users; contributing thoroughly reproducible and criticizable analyses in peer review.
Self-Actualization: At this stage, the values achieved have to be one's own, I think. Examples might be achieving technical transcendence by doing the whole project in #CommonLisp, #Guix or (for me) ISO #Prolog 🧘, or formally proving correctness of algorithms. Another example would be that others extend & improve upon your work. Finally, #scicomm could be regarded as a true pinnacle.
I just completed "Reactor" - Day 11 - Advent of Code 2025 #AdventOfCode https://adventofcode.com/2025/day/11
Both parts in #Prolog.
I just completed "Factory" - Day 10 - Advent of Code 2025 #AdventOfCode https://adventofcode.com/2025/day/10
Both parts in #Prolog. I make use of GNU Prolog's clp(fd) solver.
I just completed "Movie Theater" - Day 9 - Advent of Code 2025 #AdventOfCode https://adventofcode.com/2025/day/9
Once again I found the second part to be easier in #Perl. Probably there's a more elegant prological approach that'd be more amenable to #Prolog, but I just wasn't seeing it.