HackerTrans
TopNewTrendsCommentsPastAskShowJobs

beefburger

661 karmajoined قبل 17 سنة

Submissions

Unicode's transliteration rules are Turing-complete

seriot.ch
131 points·by beefburger·قبل 4 أيام·32 comments

Jira IS Turing-Complete

seriot.ch
3 points·by beefburger·قبل شهرين·0 comments

Show HN: RFC Esolang – RFCs as executable programs

seriot.ch
2 points·by beefburger·قبل 3 أشهر·0 comments

RFC Esolang – RFCs as executable programs

esolangs.org
11 points·by beefburger·قبل 3 أشهر·1 comments

An audio modem in 5 lines of Awk

pagedout.institute
2 points·by beefburger·قبل 4 أشهر·0 comments

An AWKward Modem

seriot.ch
4 points·by beefburger·قبل 5 أشهر·0 comments

Games in PostScript [pdf]

seriot.ch
2 points·by beefburger·قبل 6 أشهر·0 comments

"Print to Play" article in Paged Out magazine [pdf]

seriot.ch
1 points·by beefburger·قبل 9 أشهر·1 comments

Edge Matching Puzzles

seriot.ch
1 points·by beefburger·قبل 9 أشهر·1 comments

comments

beefburger
·قبل 3 أيام·discuss
No, standard transliterators like Latin-Katakana are designed to always terminate. What the article demonstrates is that the underlying rule language is powerful enough that one could write custom rules that loop infinitely.

In practice, the ICU implementation does limit the number of rewrites, even though the specification doesn't.
beefburger
·قبل 4 أيام·discuss
I've been wondering for a while if anything in Unicode could accidentally compute. It turns out that UTS #35 transliteration rules are Turing-complete. I show how to compute Collatz with just 3 rewrite rules running on stock ICU.
beefburger
·قبل شهرين·discuss
Indeed. The Jira rules implement test-then-decrement correctly, but the notation was ambiguous. I’ve fixed the pseudocode so that the test explicitly precedes the decrement. Thanks for the careful read!
beefburger
·قبل شهرين·discuss
[dead]
beefburger
·قبل 3 أشهر·discuss
RFC Esolang is a programming language in which the specification document is the source code.

Requirement levels like MUST, SHOULD, and MAY act as control flow. Section numbers define labels. Packet-diagram labels serve as registers.

Executing RFC 9379 outputs the powers of two. Pre-existing RFCs MAY parse as valid programs, forming a historically accidental standard library.
beefburger
·قبل 9 أشهر·discuss
How to install a Tic-Tac-Toe game on your printer by copy-pasting a few lines in PostScript.
beefburger
·قبل 9 أشهر·discuss
Solvers and visualizers in Python, C and PostScript