6 ms·
It might be just me, but having reached over a half of what the series promised, I don't find any of presented ideas "exotic". (I do find posts by their own are
by lifthrasiir 6y ago
It might be just me, but having reached over a half of what the series promised, I don't find any of presented ideas "exotic". (I do find posts by their own are good and enjoyable, just that I don't agree to the series title.) They are of course less popular than, well, C, but---reusing the analogy made in the very first post---they are much more like Finnish or Korean more than Navajo or Klingon.
- lambda_obrien 6y agoDo you have an example of a truly exotic programming concept? I'm really interested in weird PL stuff.
- lifthrasiir 6y agoHmm, thinking about that I don't really have many. I thought esoteric programming languages are a good source of them, but truly exotic ones turn out to be surpringly rare. Cellular automaton is vastly popular as a concrete mechanism for rule-based programming (PuzzleScript being a good example), reversible computing is no longer interesting because of quantum computers and perhaps homomorphic encryption, probablistic programming is a large enough niche that it was never exotic, circuitry-based declarative programming is not even a niche (cf. HDLs), self-modification as a single control mechanism has been tried multiple times throughout the history (often combined with string rewriting paradigm, which itself has been even more popular than self-modification), ... The list goes on and on. Probably the most exotic concept that I have ever seen is a multi-dimensional control flow (most famously Befunge [1], with some other lesser-known precedents), but there has been several programming games making use of that. Gravity-based programming [2] and the Infinity Machine [3] might be interesting if you allow hypothetical ideas. [1] https://esolangs.org/wiki/Befunge https://esolangs.org/wiki/Befunge [2] https://esolangs.org/wiki/Gravity https://esolangs.org/wiki/Gravity [3] https://www.chiark.greenend.org.uk/~sgtatham/infinity.html https://www.chiark.greenend.org.uk/~sgtatham/infinity.html
- pierre 6y agoLogical english by Kowalski (author of iso prolog) go into interesting territory for me https://www.researchgate.net/publication/345770048_Logical_English https://www.researchgate.net/publication/345770048_Logical_E...
- SAI_Peregrinus 6y agoThe esolang wiki[1] has mostly weird languages. I like John Tromp's Binary Lambda Calculus and Binary Combinatory Logic[2] [1] https://esolangs.org/wiki/Language_list https://esolangs.org/wiki/Language_list [2] https://tromp.github.io/cl/cl.html https://tromp.github.io/cl/cl.html
- lifthrasiir 6y agoWhile BLC is neat it is hardly new; it can be seen as a lambda calculus version of Iota and Jot [1]. I think the main selling point of BLC (if it were ever made to sell itself...) is a more considerably concise representation, though unlike Jot but more like Iota, not every bit sequence is a valid BLC program so there might still be a room for improvement. Anyway I consider it as exotic as combinatory logic, that is, not much. [1] https://en.wikipedia.org/wiki/Iota_and_Jot https://en.wikipedia.org/wiki/Iota_and_Jot
- nn3 6y agoHow about Piet? https://esolangs.org/wiki/Piet https://esolangs.org/wiki/Piet Programming as an abstract painting
- user-the-name 6y agoEsoteric languages are create only for the gimmick of being esoteric, and do not represent an actual effort to solve a problem in a novel way. They are really not very interesting as anything other than toys.
- nn3 6y agoWell it's a degree. Some people write write-only code in perl or in K. Others using category theory and Monads. Not sure if abstract colors are any worse. In practice I doubt there is a significant difference. It's all incomprehensible for the normal coder. At least in theory you could imagine using new parts of your brain with colorful programming. Kind of analogous to Richard Feynman picturing physical concepts using textures. There is color forth as an practical attempt to program with the help of colors.
- user-the-name 6y agoBiut Perl, K, Haskell and its friends, even colorForth, they are trying to solve real problems. They might be using odd ideas to do it, or they might look inaccessible, but that is not the point, they are honestly trying to be useful. Esoteric languages like Piet, they aren't solving a problem. They are just being obscure for the sake of being obscure. This isn't interesting, and it doesn't really teach you anything of value.
- didibus 6y agoI'd say Rebol and Forth are less known exotic ideas for programming languages. I'd also look at Unison, for a more recent exotic programming language concept. And what GraalVM is doing with the polyglot layer is quite interesting. Finally my recent favourite is PPL, probabilistic programming languages. And for more I'd recommend this podcast https://futureofcoding.org/episodes/ https://futureofcoding.org/episodes/
- tresilience 6y agoTake a look at Gougen's OBJ programming languages.
- vram22 6y agoIt is not new, but the Icon language has at least one or two. https://en.m.wikipedia.org/wiki/Icon_(programming_language) https://en.m.wikipedia.org/wiki/Icon_(programming_language) Also maybe Self and Joy (IIRC).
- bawolff 6y agoI feel like its fair to call logic programming, including prolog and datalog, exotic. They've fallen out of the mainstream (especially compared to lisp which was a big competitor to it at the time) and are quite different to program in than procedural languages. My mental model of prolog is to imagine you are constructing a graph, where some of the nodes have side effects, and then tell the compiler to do a depth-first-search, executing any side effects it comes across.
- lifthrasiir 6y agoI'm now even less sure that there are truly exotic ideas out there, but my original point was that "exotic" means something foreign, not coming from the mainstream at any point. And the complicated history of programming means virtually anything has been tried at some point.