2 ms·
> assembly on a specific machine, which seems very fair to me. It seems a little biased toward imperative languages. The earliest models of computation, namely
by tromp 3y ago
> assembly on a specific machine, which seems very fair to me.
It seems a little biased toward imperative languages. The earliest models of computation, namely combinatory logic with S & K, and the lambda calculus, date back to 1920s, and being exceedingly simple, can easily be implemented in any modern functional language. But not so easily in an imperative one, which have no support for closures.
On the other hand, implementing an imperative language in a functional one is relatively straightforward.
- spencerflem 3y agoAny defined runtime seems fair, though a real computer will always seem more canonical. The two parts that seem unfair to me: 1. There's hidden bits of information based on choosing one language over another that can't be counted. Imagine a family of 26 languages that are the same except the first letter is different etc. 2. Some of the golfing is in how good the language you picked is in their bytecode and not how clever your solution is Standardizing on one format would fix those, but you would lose the cuteness compared to demoscene of turning on your phyaical computer and trying it out, and you would lose compared to current code golf the fun of finding and playing with new cool languages Or I guess just treat each language as a separate category and not compare between them
- tromp 3y agoMy motivation in defining BLC was to have the simplest measure of the complexity of things. That includes binary strings, natural numbers, tuples, lists, sets, and functions of those, as well as languages (according to their interpreter) and formal systems (according to their theorem enumerator) [1]. [1] https://gist.github.com/tromp/86b3184f852f65bfb814e3ab0987d861 https://gist.github.com/tromp/86b3184f852f65bfb814e3ab0987d8...
- spencerflem 3y agoOh, is BLC yours? I saw the link posted earlier in the thread, its beautiful. Still trying to understand it but yeah, there's definitely a mathematical purity to it that some random ASM language doesn't have.
- Vecr 3y agoHow does it compare to BrainPhoque, the language used in Learning Universal Predictors (Hutter 2024) to approximate normalized Solomonoff induction?
- tromp 3y agoBP is like a slightly messier BrainFuck. Its alphabet size of 17 is rather odd. Its spec (Section E.2 of [1]) says > programs containing unbalanced parentheses are made valid, in particular by skipping any additional ]. But that still leaves programs invalid programs like "[[[[". From a theoretical viewpoint, its biggest flaw is the lack of an input tape, which makes it a non-optimal description method in the sense of [2]. In particular, while BLC programs are at most a constant larger than BP ones, the reverse is not true. The version of BF that I interpret in [3] is still optimally universal, because its program delimiting fist unbalanced ] is followed by its binary input. [1] https://arxiv.org/html/2401.14953v1 https://arxiv.org/html/2401.14953v1 [2] https://gist.github.com/tromp/86b3184f852f65bfb814e3ab0987d861#universality https://gist.github.com/tromp/86b3184f852f65bfb814e3ab0987d8... [3] https://gist.github.com/tromp/86b3184f852f65bfb814e3ab0987d861#brainfuck https://gist.github.com/tromp/86b3184f852f65bfb814e3ab0987d8...