Bauble:用数学创造3D艺术的编程工具

2025-01-11
Bauble:用数学创造3D艺术的编程工具

作者Ian Henry讲述了他开发Bauble的历程,这是一个使用签署距离函数(SDF)和Janet语言创建交互式3D图形的工具。最初,Bauble是一个简单的GLSL字符串连接器,但随着时间的推移,它发展成为一个更强大的工具,具有动画、自定义动态表达式、光照效果等功能。然而,由于代码库过于复杂,作者最终重写了Bauble,构建了一个更健壮的编译器和更完善的文档,使得用户可以更轻松地创建精美的3D艺术作品。

阅读更多

《写给凡人的Janet语言》

2024-11-27
《写给凡人的Janet语言》

作者Ian Henry介绍了他创作《写给凡人的Janet语言》一书的过程,这本书是一本免费的线上编程书籍,讲解Janet编程语言。作者详细描述了编写本书的历程,包括耗时20周,字数约4.4万,以及同时进行的几个相关项目,例如网站搭建、C++库绑定、交互式图形界面、命令行参数解析库、测试框架和待办事项管理器等。他还分享了网站访问数据和读者反馈,并鼓励更多人阅读此书。

阅读更多
未分类

浅谈编程中的“宏”

2024-08-14
浅谈编程中的“宏”

文章探讨了编程中宏的概念和用法,特别是与函数式编程中装饰器和高阶函数相关的概念。作者以Python和JavaScript为例,解释了如何使用宏实现类似装饰器的功能,并重点介绍了一种在Janet语言中使用宏进行表达式级别缓存的技术。作者通过对比解释了 `quote` 和 `unquote` 在Janet宏中的工作原理,以及如何利用它们在编译期分配内存并在运行时引用,从而实现更强大的宏功能。

阅读更多
未分类 Janet

从零开始配置tmux

2024-05-25
从零开始配置tmux

这篇文章详细介绍了如何从零开始配置tmux,包括解除所有默认键绑定、设置自定义前缀键、配置复制模式以及使用鼠标进行选择和复制等内容。作者还分享了一些提高tmux使用体验的技巧,例如禁用状态栏、增加滚动历史记录限制等。

阅读更多
未分类 终端复用器