This Hacker News discussion centers on "Knotty," a domain-specific language for knitting patterns, and quickly expands into a broad exploration of textile automation, its historical roots, and parallels with computer science. Participants discuss the feasibility of programming LEGO and industrial knitting machines, the potential for generative AI to design patterns, and the historical automation of crochet. A significant portion of the conversation highlights the Jacquard Loom from the early 19th century, with its punch-card programming, as a pivotal invention that not only revolutionized textile production but also directly influenced early computer pioneers like Charles Babbage, framing it as a precursor to modern computing and stored programs. The discussion also touches on the fundamental similarities and differences between weaving and knitting processes from a computational perspective.
Summary of the Discussion:
Initial Topic: Knotty DSL The discussion originates from "Knotty: A domain-specific language for knitting patterns."
Modern Automation & AI (willvarfar): The idea of programming LEGO knitting machines is raised, along with the potential for generative AI to create knitting patterns that could then be manufactured and delivered as personalized gifts. The commenter also mentions industrial automation for crochet, noting specific companies.
Historical Programmable Knitting Machines (foofoo12, blahlabs): Programmable knitting machines using punch cards or switches existed in the 1970s and 80s. One user describes converting a Brother machine of that era for digital image knitting using an Arduino and the "All Yarns Are Beautiful" (AYAB) project.
The Jacquard Loom & Computing History (qdw, haunter, delaminator, russellbeattie): The 1804 Jacquard Loom, which used punch cards to control weaving patterns, is frequently cited as a key precursor to modern computing. It heavily influenced Charles Babbage's Analytical Engine and is argued by many to represent the first real computer or stored program. Earlier innovators like Basile Bouchon (1725) and Jean-Baptiste Falcon (1728) also contributed to punch-card controlled looms.
Weaving vs. Knitting as Processes (zokier, bregma, eru): A debate arises on whether weaving and knitting are fundamentally different or "essentially identical" processes from a computational standpoint. While both involve sequential instructions for mechanical fiber manipulation, their specific mechanisms and resulting textile properties differ.
Computational Equivalence (bregma, dleeftink): From a computer science perspective, any recursively enumerable transform is considered computing. An analogy is drawn between the Jacquard loom and an abstract Turing machine. Additionally, modern computing terms like 'arrays' and 'threads' are noted to have origins in weaving machines, reinforcing the historical link.
Full Circle of History (russellbeattie): The evolution from Jacquard's early stored programs to modern DSLs like Knotty is highlighted as a satisfying "full-circle of history."
Miscellaneous Comments: Other comments include appreciation for "overengineering" (jimnotgym), surprise at the topic (pwdisswordfishz), liking a "Megaman example" from Knotty (johnisgood), and a note on Lisp's syntax (James_K).