HolyC

4.5

软件描述

HolyC与普通的C语言非常相似,因此它是一种简单而强大的语言。它被用于构建了整个TempleOS,所以毫无疑问它可以用来编写程序。

官方网站

访问软件的官方网站了解更多信息

官方认证

holyc-lang.com

安全链接HTTPS

什么是 HolyC?

HolyC,正如其名称所示,是一种类似C的语言,具有若干关键差异和改进。与C一样,它对空格不敏感,并编译为汇编代码。
最重要的区别在于,HolyC使用“即时编译”(JIT),这意味着你无需将代码编译成二进制文件再运行(如Windows下的.exe文件),而是可直接从文件运行代码。许多解释型语言如Python和Lua即属此类,部分还具备JIT版本,如PyPy和LuaJIT。但拥有这样一个完整操作系统*,极为酷炫:只需修改一个文件并重启,操作系统就已改变!即使在Linux或BSD这类源码公开的操作系统中,你也必须下载源码并重新构建整个系统才能更改系统本身,远不如HolyC对爱好者友好。
除此之外,这种JIT“即时编译”带来了极大的灵活性与简洁性,仿佛减少了诸多中间环节的干扰。
此外,HolyC拥有大量语法糖——即表达相同含义的不同写法。这类似于人类语言中的方言。与Python等现代语言类似,函数可接受可变数量的参数,此处通过函数定义中的(...)表示。函数体可通过内置的argc和argv变量访问其参数。
最后,HolyC不要求必须有Main()函数。函数外的表达式会按源码顺序自上而下直接求值。这也使该语言能像shell一样工作,事实上,它正是TempleOS的shell。
函数是体现更显著差异的地方。首先,调用无参数(或未覆盖默认参数)的函数时,语法上可简写为仅函数名后接分号。

  • 在HolyC中,可以Free()一个空指针(C中也是如此)。
  • 栈不会增长,因为HolyC不使用虚拟内存。
  • 语言中没有continue关键字。相反,Terry鼓励程序员使用goto替代。
  • 无#define功能。Terry对此的解释是“我不喜欢”。
  • typedef关键字被class取代。
  • #include不支持<>来导入标准库。所有#include语句必须使用""。
  • 完全没有类型检查。
  • 支持try{}、catch{}和throw,但throw仅返回最多8字节的char参数,可在catch{}中通过Fs->except_ch访问。

🔄 替代方案

58 个选择
4.4

Java是一种通用的计算机编程语言,具有并发性、基于类和面向对象的特点,并且特别设计为尽可能减少实现依赖。

免费个人 • 开源
查看详情
4.5

C++ 是一种静态类型、自由格式、多范式、编译型、通用且功能强大的编程语言。它被视为一种中间层次的语言,因为它结合了高级语言和低级语言的特性。

免费 • 开源
查看详情
4.4

Rust 是一种多范式、通用的编程语言,注重性能、类型安全和并发性。它在无需垃圾回收器的情况下实现内存安全,即所有引用均指向有效内存。

免费 • 开源
查看详情
4.5

C# 是一种多范式编程语言,涵盖强类型、命令式、声明式、函数式、泛型、面向对象(基于类)和组件化编程范式。

免费 • 开源
查看详情
C (programming language)

C (programming language)

编程语言

5

C是一种通用编程语言。它由丹尼斯·里奇在20世纪70年代创建,至今仍被广泛使用并具有重要影响。设计上,C的语言特性清晰地反映了目标CPU的功能。

免费 • 开源
查看详情
4.4

Lua 是一种功能强大、快速、轻量级且可嵌入的脚本语言。 Lua 将简单的过程式语法与基于关联数组和可扩展语义的强大数据描述结构相结合。Lua 为动态类型语言,通过解释基于寄存器的字节码运行。

免费 • 开源
查看详情
Go (Programming Language)

Go (Programming Language)

编程语言

4.7

由谷歌开发的开源编程语言,采用C风格语法并具备自动内存管理功能。具有内置并发支持和丰富的库,适用于云服务、Web及命令行工具开发,通过快速构建和庞大的生态系统,支持DevOps。

免费 • 开源
查看详情
5

Perl是一种高级、通用、解释型、动态的编程语言,已有22年以上的开发历史。

免费 • 开源
查看详情
上一页
下一页
评分4.5 / 5.0

支持平台

下载与相关链接

安全提示
⚠️

安全提醒

点击下方链接将跳转到第三方网站,请确保来源安全,建议优先从官方网站下载。