有趣的编程语言 Red

Red 项目最早始于 2011 年,项目由 Nenad Rakocevic 主导。Red 语言是一种同时具有函数式、声明式、符号式特性的现代编程语言,其目标是构建成一个全栈编程语言。Red 语言受到 Rebol 语言启发,两者语法高度相似。和 Rebol 语言只能解释执行不同,Red 语言还提供了 AOT 编译(生成独立的可执行文件)功能,在未来还将支持 JIT 编译。

Red 语言的主要特性:

……

Free Pascal 链接 C/C++ 静态库

本文提供的方法仅在 Windows 中测试通过,未在 Linux 中进行过测试,但理论上也能使用。

Free Pascal 中可以用非常简单的代码链接到动态库:

pascalfunction MyAdd(x, y: Integer): Integer; external 'mylib.dll' name 'MyAdd';

另外也可以链接到静态库,这样分发程序的时候就不用带上一堆 DLL 文件了。

首先将 C 代码编译为静态库,然后在 Lazarus > 项目选项 > 编译器选项 > 路径 > 库 (-Fl) 中输入静态库存放的路径。此处以 C 编写的静态库导出 MyAdd() 函数为例,演示如何在 Free Pascal 中调用它。

……

Zig 语言:从入门到放弃

一直想用 Zig 来写一点什么。正好看到一个 Zig 的 GUI 项目 Capy,想着用它来试试手。

首先,用 scoop install zig 命令安装了 Zig,版本是 0.14.0(后续会提到)。然后,按照 Capy 的官方文档下载了项目模板,使用 zig build 命令编译。接下来,就遇到第一个扑面而来的问题:

error: unable to discover remote git server capabilities: ConnectionTimedOut

可以确信的是,命令执行环境中已经正确地配置了代理,包括 Git 全局配置、环境变量和系统代理。Zig 没能正确使用代理设置。最后只能使用虚拟网卡实现代理。

……

Fournoas 说:

咦?你们美国怎么也搞一贱三连呀
咦?我为什么要说“也”

禁用 Windows 系统热键

Windows 中存在大量与 Win 组合使用的全局热键。比如 Win + E 打开资源管理器、Win + R 打开运行对话框、Win + D 最小化所有桌面窗口、Win + Tab 显示任务视图,等等。几乎所有 Win 与单一按键的组合都被系统占用了,而通常用户日常使用的系统热键只占其中很少一部分。如果能禁用(释放)一些 Windows 系统热键,以供其他软件使用,想来也是甚好。

……

Fournoas 评论《新冠疫苗之父 杨晓明被判处死刑》:

这是犯了“欺菌之罪”吗?🤣🤣🤣

热修复 Scoop 的 GIMP 3.0 安装脚本错误

Windows 包管理器 Scoop 上的 GIMP 3.0 已经发布一周多了,期间已经推送了三个版本。然而官方的安装脚本存在错误,导致用户无法正确安装,至今仍未解决。目前 GIMP 3.0 的安装配置主要存在两个问题:

  1. 软件安装包解压缩失败
  2. 安装脚本中的文件路径不正确

问题一只要将 Scoop 默认的 innounp 卸载并替换成 innounp-unicode 就行了:

powershellscoop uninstall innounp 
scoop install versions/innounp-unicode

问题二的错误信息如下:

……

记一次 WinGet 升级故障排查

本文记录一次 WinGet 升级故障排查的过程。最终删除了 Windows 应用商店安装的版本,再使用 Scoop 重新安装,通过这种方式解决了问题。

Fournoas 评论《为什么西方人喜欢投降,而东方人则喜欢同归于尽?》:

敌人:你为什么投降?

西方人:我家里还有老婆孩子。

敌人:你为什么不肯投降?

东方人:我家里还有老婆孩子。

Fournoas 评论《中国两会2025看点:经济增长维持5%、发债刺激国内消费》:

问:我失业了,没有收入,如何消费?

答:你来负责受刺激的那部分,领导来负责消费的那部分。