Urgent.News

What's breaking now, across thousands of outlets.

Tech

Small Programs and Languages

The article explores the appeal of tiny Forth implementations, tiny languages, and small programs. The author notes that when a program is only 200 lines of code, they are more likely to read it. Moreover, if a program accomplishes something interesting in just 20 lines, the author is even more intrigued. The article provides examples of such small programs, including a 46-byte Forth by Philippe Brochard and Roger K.W.

Hui's Appendix A Incunabulum, which describes an array-based language interpreter written on one page in one afternoon. The author also mentions Arthur Whitney's k array language, kdb, which is 100 lines of C, and a Lisp interpreter in Lisp that is as small as 436 bytes. The author emphasizes that code golfing, or creating the shortest possible version of a program in a predetermined language, is meaningful and can teach the fundamentals of programming languages.

Finally, the author encourages readers to explore miniaturized programs, which can provide valuable insights into the essential nature of programming concepts.

Written by urgent.news from Hacker News's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at ratfactor.com →

More in Tech

Marion Barry Meets the iPhone Duo

Jay Peters, The Verge: The iPhone Duo officially goes on sale today, but a few units already have broken screens. According to posts on Reddit about the affected units, the issue appears to be…

  • iPhone Duo released with reported screen issues
  • Users report cracks near hinge within 20 minutes
  • Apple Store replaces faulty devices without visible damage

Message Queue Timeout Issues in Delayed Webhook Delivery for Node.js

Use a delayed queue to wake up reservation expiry, then let a retryable worker make the final decision. The operational rule is simple: set a bounded consume timeout, record why a webhook was slow…

  • Message queue timeouts can disrupt delayed webhook delivery in fintech systems.
  • Logging reservation ID, attempt count, and timeout details aids troubleshooting.
  • Idempotency key prevents multiple processing of the same reservation.

What fields does a product have? The question that breaks your schema

Try to design the products table for a store. A laptop needs RAM, processor, and inches. A bicycle needs size, material, and number of speeds. A book needs pages and language.

  • Products have distinct fields like RAM, processor speed, screen size, material, and gears
  • Normalization approach uses key-value table and joins, but creates awkward queries
  • Couchbase Capella catalog uses JSON documents with dynamic filtering and aggregations

More from Saturday 24 October →