V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
xuanwu
V2EX  ›  分享创造

木兰编程语言体验版更新:中文交互环境、调用 Python 库

  •  
  •   xuanwu · 2020-05-31 09:21:12 +08:00 · 2200 次点击
    这是一个创建于 1423 天前的主题,其中的信息可能已经有所发展或是发生改变。

    好长一周,进展不少。

    可调用 Python 库,比如草蟒项目的中文库“图快”(基于 tkinter ):

    运行源码文件有错时反馈中文信息:

    在交互开发环境使用中文命令:

    顺便用快速排序算法练手:

    更多详情见“木兰编程语言” VS Code 插件。上图都在 Mac 下截取。

    bfme
        1
    bfme  
       2020-05-31 12:08:01 +08:00
    怎么看者很别扭啊。
    fatestigma
        2
    fatestigma  
       2020-05-31 15:05:57 +08:00
    以前还从来没有试过中文编程,如果要中文编程的话,关键词是不是也应该翻译一下呢?
    简单用 Lisp(Hy)尝试了一下,请忽视这个快排实际不快的问题。。
    (defmacro 函数 [&rest args] `(fn* ~@args))
    (defmacro 如果 [test then &optional else] `(if* ~test ~then ~else))
    ...
    (setv 小于 (fn [a b] (< a b)))
    ...

    (函数 快排 [数列]
    (如果 (空? 数列) []
    (让 [[首项 #* 剩余] 数列]
    [#* (快排 (数列解析 各项 剩余 :如果 (小于 各项 首项) 各项)
    首项
    #* (快排 (数列解析 各项 剩余 :如果 (大于等于 各项 首项) 各项))])))
    fatestigma
        3
    fatestigma  
       2020-05-31 15:13:32 +08:00   ❤️ 1
    @fatestigma #2 额,总忘记 V2EX 会吃缩进,而且好像有个括号丢了,发个链接好了 https://paste.ubuntu.com/p/fTgR2wM2FD/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1418 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 17:29 · PVG 01:29 · LAX 10:29 · JFK 13:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.