HackerTrans
TopNewTrendsCommentsPastAskShowJobs

beefburger

661 karmajoined 17 năm trước

Submissions

Unicode's transliteration rules are Turing-complete

seriot.ch
131 points·by beefburger·4 ngày trước·32 comments

Jira IS Turing-Complete

seriot.ch
3 points·by beefburger·2 tháng trước·0 comments

Show HN: RFC Esolang – RFCs as executable programs

seriot.ch
2 points·by beefburger·3 tháng trước·0 comments

RFC Esolang – RFCs as executable programs

esolangs.org
11 points·by beefburger·3 tháng trước·1 comments

An audio modem in 5 lines of Awk

pagedout.institute
2 points·by beefburger·4 tháng trước·0 comments

An AWKward Modem

seriot.ch
4 points·by beefburger·5 tháng trước·0 comments

Games in PostScript [pdf]

seriot.ch
2 points·by beefburger·6 tháng trước·0 comments

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

seriot.ch
1 points·by beefburger·9 tháng trước·1 comments

Edge Matching Puzzles

seriot.ch
1 points·by beefburger·9 tháng trước·1 comments

comments

beefburger
·3 ngày trước·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 ngày trước·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
·2 tháng trước·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
·2 tháng trước·discuss
[dead]
beefburger
·3 tháng trước·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 tháng trước·discuss
How to install a Tic-Tac-Toe game on your printer by copy-pasting a few lines in PostScript.
beefburger
·9 tháng trước·discuss
Solvers and visualizers in Python, C and PostScript