也许是最古老的 DSL

我觉得这算一种数据格式. 如果这也能算 DSL 的话是不是结绳记事才算 DSL

三十只羊,四十只鸡
绳子上段打上三个小结代表“三”,末尾打上一个大结代表“十”
一根红色(胜利)的粗绳下面四根绳子,第一根是羊毛,上面打着“三”“十”,第二根是麻绳套着鸡毛,上面打着“四”“十”

例子 取自此。如果有明确格式,结绳记事的确像DSL,只是不以文字表达。

感觉是 GptDSL :grinning:

需求分析:记录每一步棋的走法,以便复盘。

逐步补一下语法。

棋子: 车 | 马 | 象 | 士 | 将 | 炮 | 卒 | 兵 | 帅 | 仕 | 相

// 两种情况:
// 一、表示进退的格数,如 车五进三
// 二、表示所在列号,如 帅四平五
红方列号或格数: 一 | 二 | 三 | 四 | 五 | 六 | 七 | 八 | 九
黑方列号或格数: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

方向: 进 | 退 | 平

相对位置: 前 | 后 | 中

红方棋子: 棋子 红方列号或格数   // 马二
       | 相对位置 棋子       // 前车

黑方棋子: 棋子 黑方列号或格数  // 马2
       | 相对位置 棋子       // 前车

红方着法: 红方棋子 方向 红方列号或格数    // 马二进三、前车平八

黑方着法: 黑方棋子 方向 黑方列号或格数      // 马2进3、前车平8

回合: 红方着法 黑方着法

// 待完善:可能最后一步为红方
棋谱: 回合
   | 棋谱 回合

编程语言也不是用文字表达的

也许对“文字”的理解不同?请详述或分享一下资料?