中语言超酷特性 之 --- 多维泛指

中语言计算技术研究与发展联盟

舒生羽  wzyorg@gmail.com

     泛指的基本意义在于使用多个名字的高自由度的组合来实现指称,而且是带有某种计算的组合。我们对泛指作出了一些细致分析,从中认识到汉语里面的指称存在着深刻的内在结构。

    事实上,结构在思维和计算中无处不在。如果我们分析这种组合形式的指称方式,那么就会发现在这些有着修饰和限定辞的,参数形式的泛指佐数也是带有结构的,因此我们应该在语言中明确表达这一点。然而在通常的C++的模板方式的模板佐数册子是一个线性的序列,直观上并无结构。当然事实上,通过使用模板类来嵌套模板的方式能够实现一定的结构,但这会变得复杂而不便。

    为此中语言提供了多维泛指这一概念来扩展泛指的概念。多维泛指其实也就是在泛指佐数里面引入一个维度概念,使得泛指佐数从一个一维线性结构变成一个二维平面结构。

    它的形式大致如下:

<%参数册子%>-[维名]…. <%参数册子%>-[维名]泛指名字

    在这样的结构下,我们会让程序变得出人意料的富有表达力。首先在可读性可以增加许多,而且几乎通常的汉语都程序了。比如

<>-();

<>-[]();

<>-[]<>-[]();

    当然要使这种形式在实际的编程工作中发挥巨大的效用,我们还需要对程序的基础数据结构和算法方面作些深入研究。然而,这的确带来表达上的根本进步。我们将可以从中语言的华库(等价于C++的高级标准库,以GCC libstdc++v3.0为基础)和中语言内部的计算机代数系统上看到这一点。

    这样形式的符号序列都将是有严格计算意义的程序。但在当前中语言的形式中,由于缺乏丰富的实践和充分的理论思考,以及其它经验上借鉴,维名的严格语义并没有正式定义。有兴趣的朋友可以参与进相关讨论。

    下面是一个使用中语言多维泛指构造的示例程序。这里再次从公孙龙子的一篇文章---《坚白论》出发来构造出一个简单的例子程序。

    下面是程序:

 朴库.标准进出;



{
    <%质地: %>-[质]<%颜色: %>-[色]
    石: =
    {
        价值: ()->()=(质地 * 7 + 颜色 * 3) * 10;

    };


}
道: ()->()=
{
    坚 :=定 88;
    白 :=定 66;
    玉石: <坚>-[质]<白>-[色]石;
    打印文套("玉石价值几何?\n答曰:%d\n", 玉石.价值());
}

    程序的执行结果如下:

 

官网文件参考:

http://zhongyuyan.org/ZStudy/超酷程序/多维泛指.html

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值