1 个不稳定版本
0.1.0 | 2023年6月24日 |
---|
#1000 in 编程语言
22KB
588 行
塞利亚
SELYA (面向青年和成年人的特殊谜之语言) -- 基于十六进制的谜之语言,适合所有人 :D
安装
cargo install selya --features clap
语法
所以,你们可能已经知道,在大多数编程语言中,这样的字符串 0xA2
-- 是一个十六进制数
塞利亚尽可能地使用它 :D
你使用的每个十六进制数都将写入相应的单元格。
默认情况下,光标安装在第一个位置,但你可以使用运算符 -->
或 <--
来更改它
运算符
我奇怪为什么在描述了两个运算符之后才开始这一章,但无论如何
所以,塞利亚有如下运算符
-->
和<--
-- 将内存的光标移动到箭头方向;[+]
-- 将下一个值添加到当前单元格(如果单元格溢出;[^]
-- 将下一个值与当前单元格中的值进行模 2 加法;[>]
和[<]
-- 在指定方向上旋转内存;
除了塞利亚运算符外,它还有命令(尚未发布)
- 我不想谈论它,试着自己找出来 :D
zen
-- 写下塞利亚的禅意
规则
- 你写入的第一个值 -- 内存大小。内存大小可以大于或等于
0x0
,小于0xFFFF
,另一个值无法被解析器识别 - 你可以通过 6 个词获得邪恶的力量 :D
错误
所有错误都具有相同的类型,如 [Selya::Pipeline::{kind}]: {description}
。可能的错误类型
IoError
-- Selya 解释器无法读取您的文件;ParserError
-- 无法解析您的文件。似乎您在数字中输入了超过 4 位数字;Memory::Overflow
-- 单元中写入的数字超过0xFFFF
;Memory::OutOfRange
-- 当您尝试对内存边界进行移位时出现;Interpreter::UsingBinaryAsUnary
-- 在二元运算符([+]
和[^]
)之后没有数字。
依赖项
~0-270KB