11,757 karma · joined October 21, 2016
But what can you do? At this point, keeping federated alternatives, protocol-first designs, and multiple interworking implementations is more important than purity; it might well be the last successful initiative of its kind.
No mention of long-term stake of EU in ActivityPub platforms either, as if W would be our savior.
The case mentioned where the CSS min() function is rejected is another place where bulk import of the extremely complex CSS spec is just not helpful. Ebook readers aren't evergreen browsers after all.
3.14 broke GC
I guess these kinds of priorities are exactly why Python is not my favorite programming language and why you have tens of Python versions installed on any machine. Not to talk about the Python 2 -> 3 drama that was also about fetishising syntax and pureness over pragmatism, installed base, and respect for existing code.
My experience with Python is a really bad one for professional work: it's chaotic and slow, and has by far the worst versioning and packaging story of any mainstream language, yet its proponents keep praising it in denial.
I guess Python is an ok target for agentic coding, but my god do look Claude's commit messages pretentious, with code bases quickly heading into absolute unmaintainability. At least it had found gross JS injection vectors in a Django app that really shouldn't have made it through a code review, architecture level as they were, but oh well. A mature Django app is also not a nice dev experience IMO, with tons of implicit behavior all over the place encoded in a mix of magic filenames, database naming conventions, and URL routing quickly descending into regexp hacks.
I guess what may also have contributed is that there are a number of concurrent logics implemented in Prolog for prototyping Erlang's scheduler such as Concurrent Transaction Logic ([1]).
Prolog also works extremely well as a target language for code generation by LLMs for these domains due to it being "higher up in the food chain" compared to procedural languages so to speak, and because Prolog was originally envisioned for classic NLP and hence has a corpus of one-to-one mappings from natural language to logic (as in the example in [3]). So well in fact that even with last-gen models textual descriptions for suitable problems become the bottleneck and you can in many cases just go straight to Prolog code instead ([2]).
[1]: https://quantumprolog.sgml.net
Simple general-purpose opponents can be coded using just recursive backtracking search, while more advanced ones (supporting moves that need to destructively change state) can still be conveniently modelled by reifying facts and thereby enable backtracking over assert/retract-like Prolog DB modifications, as used in discrete combinatorial planners [1].
[1]: https://quantumprolog.sgml.net/container-planning-demo/part1...
k >> plus 0 _ P |----> k << P
k >> plus (s N) _ (s P) |----> k; _ >> plus N _ P
k; _ << P |----> k << P
So if you're confused because of the slightly unusual notation, here's the same thing in Prolog syntax: % "Sum is the sum of S1 and S2"
plus(S1, S2, Sum) :- Sum is S1 + S2.
% "What is the sum of 3 and 5?"
?- plus(3, 5, S).
% Answer: S = 8
% "Is 10 the sum of 3 and 5"
?- plus(3, 5, 10).
% Answer: fail
% "What's the difference between 3 and 10?"
?- plus(3, X, 10).
% throws an error
It doesn't work this way in general because the Prolog is/2 predicate can only be used in one direction to evaluate the term on the right hand side where must all variable must be bound to a number in context. The article mentions Peano arithmetic as one finite/incomplete axiomatisation of natural numbers but doesn't elaborate on it.[1]: https://learn.microsoft.com/en-us/previous-versions/ms536495...
This is simply unconstitutional and should be escalated ASAP if you don't want to end it before the appropriate court in Leipzig, Karlsruhe, or maybe Luxembourg.
ActivityPub (Mastodon etc) has already very granular permissions wrt. who to federate with, which posts to make public, edit or withdraw posts after initial creation, etc. catering to EU privacy and moral/personality rights demands.
For closed group chat, there are many alternatives.
Discord is after all a video chat app designed to be used during a gaming session first and foremost.
Dude JFX yielded what was called RIAs to JavaScript like almost 15 years ago. Of the three major GUI toolkits Swing, JavaFX, and SWT it was Swing that gained HighDPI support first (10 years ago), and continues to be the base for kick-as IntelliJ IDEA and other Jetbrains IDEs.
I think you're missing the forrest for the trees ;)
The major point of SGML in this context is that elements have content models defined by regular expressions, just like any other grammar productions eg. BNF.
ISO 8879 (SGML) doesn't define an API or a set of required language features; it just describes SGML from an authoring perspective and leaves the rest to an application linked to a parser. It even uses that term for the original form of stylesheets ("link types", reusing other SGML concepts such as attributes to define rendering properties).
SGML doesn't even require a parser implementation to be able to parse an SGML declaration which is a complex formal document describing features, character sets, etc. used by an SGML document, the idea being that the declaration could be read by a human operator to check and arrange for integration into a foreign document pipeline. Even SCRIPT/VS (part of IBM's DCF and the origin of GML) could thus technically be considered SGML.
There are also a number of historical/academic parsers, and SGML-based HTML parsers used in old web browsers.