嗨,HN,
我一直在开发一种名为XXML的实验性编程语言。这个项目源于我在系统语言中遇到的一些挫折:
- 拥有强所有权的语言往往避免运行时反射。
- 具有丰富反射的语言通常依赖于垃圾回收(GC)或放弃内存保证。
- 编译时代码生成通常需要一个单独的宏语言。
我想探索这些权衡是否真的必要。
XXML的目标
XXML是一种静态类型的本地语言,具有以下特点:
- 使用显式的所有权和借用(不使用垃圾回收器)
- 在遵循所有权规则的同时支持运行时反射
- 允许使用普通语言结构进行编译时代码生成,而不是宏
- 编译为LLVM IR并生成本地二进制文件
反射API受到限制,因此不安全的所有权操作在编译时会被拒绝。我们的目标不是“无论如何都要动态”,而是在不失去安全性的前提下进行自省。
目前的应用场景
我正在探索的一些具体用例:
- 为本地应用程序提供安全的插件/模块系统
- 自动生成序列化(例如,JSON/RPC),无需宏
- 可以推理用户类型的调试和检查工具
- 受益于结构化语法的声明式领域(UI/布局/资产图)
这不是
这是一个早期阶段的项目,绝对还不适合生产使用:
- 生态系统非常有限
- 语言仍在不断发展
- 文档和工具尚不完整
我特别希望得到那些在以下领域有经验的人的反馈:
- 编译器
- 语言运行时
- 具有大量序列化或插件边界的系统
代码
GitHub 仓库:
[https://github.com/ThatSoulyGuy/XXMLCompiler](https://github.com/ThatSoulyGuy/XXMLCompiler) 或 [https://xxml-language.com](https://xxml-language.com)
我特别希望得到关于以下方面的批评:
- 所有权模型
- 反射安全边界
- 这个设计的根本缺陷
感谢阅读 — 欢迎提出问题。
返回首页
一周热榜
我在一个团队工作,负责维护内部批处理系统。为了保持高质量的服务,我们集中记录所有的故障和错误,逐一查看,并将其分配到根本原因工单中。频繁出现的故障会尽快修复,而那些每周偶尔出现一次的故障则会被优先处理,并安排在下一个冲刺中。有时服务会出现故障,导致出现数十个故障(通常归类为一个根本原因工单),但大多数情况下,每天的故障少于一个。
不幸的是,我们没有好的方式来管理这些故障——目前我们使用自定义脚本和JIRA,但效果并不好。我们愿意为外部服务付费,但我就是找不到合适的解决方案。
像Datadog或Sentry这样的工具处理的是统计数据和错误组……但我们希望查看每一个故障,以确保没有遗漏。JIRA太慢且功能有限。我们甚至尝试过使用Google表格,但它们无法扩展。
有没有人遇到过类似的问题——跟踪每一个单独的故障,而不仅仅是汇总或计数?你们使用什么工具?
嘿,HN,
我之所以开发这个工具,是因为我对现有的网站构建器感到沮丧:
- 拖放式构建器繁琐且结果杂乱
- 无代码工具仍然有学习曲线。你需要一个专家,或者自己成为专家
- 行内编辑总是会破坏某些东西,尤其对重复列表毫无用处
- AI构建器?解释你的需求,消耗数千个令牌,最后还是得自己编辑代码
所以我做了一个更简单的工具:选择精心设计的shadcn模块,通过一个简洁的侧边栏自定义颜色、文本和图片,然后发布。
包含的内容:
- 150多个模块(计划扩展到数千个)
- 多语言支持——可以用任何语言创建网站
- 内置博客
- 免费自定义域名连接
- 集成:Meta Pixel、Google Analytics、Google Tag Manager、PostHog等,适合专业人士。
这个想法是,限制会创造更好的结果。与其提供无限的灵活性,不如提供可以协同工作的精选模块。
希望听到你的反馈。这有用吗?有什么可以改进的地方吗?