Knotty: A domain-specific language for knitting patterns 🔥 Горячее
Knotty — это предметно-ориентированный язык (DSL) для описания вязальных паттернов, реализованный в Racket. Он позволяет программировать схемы вязания, используя код вместо традиционных графических или текстовых инструкций. Основная идея заключается в автоматизации создания сложных узоров, что упрощает работу дизайнеров и энтузиастов.
Язык предоставляет модули для ввода-вывода данных, примеры кода и справочник, облегчая освоение и применение. Knotty демонстрирует, как нишевые DSL могут решать специализированные задачи, сочетая программирование с ремеслом.
Комментарии (49)
- Обсуждение исторических связей между программируемыми ткацкими станками (Жаккардовы машины) и современными компьютерами.
- Восхищение проектом как примером элегантного и практичного инженерного решения, продолжающего исторические традиции.
- Размышления о параллелях между вязанием и функциональным программированием, где физические ограничения сравниваются с системой типов.
- Интерес к современным DIY-станкам для вязания и возможностям автоматизации создания узоров с помощью ИИ.
- Шуточные комментарии об ожиданиях увидеть что-то другое (например, терминальный эмулятор) и отсылки к поп-культуре.
Geotoy – Shadertoy for 3D Geometry
- 3d hilbert curve
- shingles
- temple
- rusty maze
- spring
- fbm terrain
- torus knot
- dandelion
- power line
- woven WIP
- roots
- bumpy sphere
- abstract hourglass
- birdbath
- concrete tetrapod
- terraced floating island
- extruded clay bowl
- fancy shader props
- superellipse dominos
- dark souls tree
Автор всех работ: ameo
Geoscript и Geotoy — Casey Primozic, открытый код.
Комментарии (22)
- GeoToy — это «Shadertoy для геометрии»: вместо цвета пикселя функция возвращает вершины, поэтому куб рисуется 36 вызовами, а не 921 600.
- Похож на DSL для 3D-моделей; пример «temple» помогает быстрее понять синтаксис.
- Материалы задаются не кодом, а через UI (три пиктограммы → «materials») и используют трипланарное отображение без UV.
- Анимации пока нет, но пользователи просят добавить переменную вроде
iTimeиз Shadertoy. - Проект вызывает ассоциации с Structure Synth и geometry-шейдерами, но последние считаются трудными для оптимизации.