D Language Blog Archive

RSS: https://blog.dlang.org/feed.xml
D 编程语言官方博客,关于 D 语言的公告、教程与社区动态。

滥用重载集在D语言中创建临时模板API

D语言博客详解如何利用重载集(Overload Sets)与模板特化构建临时的、基于匹配存在的API设计模式。文章通过整数索引查找和统一向量接口两个实例,展示了如何在没有主结构体定义的情况下,通过编译期模式匹配实现维度泛型代码。同时介绍了如何让用户替换默认重载集(如)以扩展或修复行为,适合对D语言元编程和高级API设计感兴趣的开发者。
评论点赞收藏27 天前

Symmetry秋季代码报告:ImportC功能增强

D语言博客发布Symmetry秋季代码报告,重点介绍ImportC功能的增强。ImportC允许D编译器直接编译C代码,利用D在性能和安全性上的优势,结合C丰富的库资源。此次更新旨在提升D与C的互操作性,是D语言长期目标的一部分。
评论点赞收藏46 天前

我不再与工具对抗,用D语言构建了自己的游戏引擎

作者因Godot引擎的代码驱动限制,转而使用D语言开发自研游戏引擎Parin。文章深入探讨了D语言在内存管理(Arena分配器、静态数据结构、混合GC/手动管理)和元编程(实体系统、自动调试UI、联合分配)方面的优势,展示了如何通过语言特性实现高性能与开发体验的平衡。
评论点赞收藏67 天前

教AI认识自我:在D语言中构建本地LLM代理

作者基于多年D语言开发经验,决定从零开始构建本地LLM代理DLLM,并解释为何宁愿用Brainfuck也不选Python。文章展示了D语言在系统编程和AI基础设施方面的潜力与个人实践。
评论点赞收藏70 天前

令人惊叹的编译时元编程状态机

文章探讨了在软件工程中,针对具有多个字段的复杂对象构建问题,传统运行时构建器(Builder Pattern)的局限性。重点介绍了D语言如何利用编译时元编程(CTFE)和状态机模式,在编译阶段强制验证对象字段的初始化状态和必填项,从而将运行时错误转化为编译时错误,提升代码安全性与健壮性。
评论点赞收藏103 天前

DIP 1053:元组演进史

文章介绍了D语言中元组(Tuple)处理的历史遗留问题,包括内置编译时序列、std.meta.AliasSeq 和 std.typecons.Tuple 之间的复杂关系及不友好的使用体验。DIP 1053 旨在解决这些痛点,提供更简洁、直观的元组访问和操作方式,提升语言的人体工程学体验。
评论点赞收藏126 天前

将 DMD 编译器作为库:一场动员令

文章指出 D 语言基金会希望将 DMD 编译器打造为灵活的库,以促进开发者工具建设和语言普及。但进展缓慢,主要受限于方向不明确和前端代码复杂度高。作者呼吁社区关注并参与解决这些问题。
评论点赞收藏906 天前

用D语言打造自解释代码

作者回顾了自己维护40年前代码的经历,指出代码随时间推移变得难以理解的痛点。文章旨在介绍通过D语言特性使代码变得“自解释”(self-evident)的简单方法,以提升代码的可读性和可维护性。
评论点赞收藏1048 天前

减少模板编译时间

D语言官方博客文章,探讨模板编译时间过长的问题,介绍D语言模板相比C++的优势及设计哲学。
评论点赞收藏1605 天前

D语言中的气体动力学模拟工具包

介绍基于D语言开发的Eilmer气体动力学模拟工具,并以BoLT-II高超音速飞行器的模拟应用为例,展示其在流体力学仿真中的具体使用场景。
评论点赞收藏1656 天前

New Year DLang News: Hello 2022

For many people around the world, 2021 is a year they’d like to forget. The ongoing pandemic has touched all of our lives indirectly, but for too many, including some in the D community, it has had a ...
评论点赞收藏1683 天前

从零开始教D语言:它适合作为第一门编程语言吗?

作者基于家庭学校教学经历,分享用D语言教孩子编程的真实体验与挑战。文章探讨了D语言作为初学者第一门语言的可行性,涉及教学过程中的具体困难、语言特性对新手的影响,以及个人对编程教育的思考。
评论点赞收藏1696 天前

登录芦苇

登录后关注作者、收藏内容和参与讨论。