欢迎光临
我们一直在努力

在python3.14中测试mojo语言

  • 登录python3.14容器,并安装mojo语言
  • docker start python3143
    python3143
    docker exec -it python3143 bash
    pip install mojo
    Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
    Successfully installed click-8.3.1 mblack-26.1.0 mojo-0.26.1.0 mojo-compiler-0.26.1.0 mojo-lldb-libs-0.26.1.0 mypy-extensions-1.1.0 pathspec-1.0.4 platformdirs-4.9.2

    用mojo秘籍 网站上的例子 https://mojo-lang.com/miji/move/examples.html 来测试。 hello.mojo

    def main():
    print("Hello, world!")

    定义函数语法和python相同, 但是不需要写调用main函数的语句,直接就能执行,build是编译成二进制文件,但不执行

    mojo hello.mojo
    Hello, world!
    mojo build hello.mojo
    ./hello
    Hello, world!

    mojo add.mojo
    3.0

    mojo mult.mojo
    Nine-nine Multiplication Table
    1 * 1 = 1 1 * 2 = 2 1 * 3 = 3 1 * 4 = 4 1 * 5 = 5 1 * 6 = 6 1 * 7 = 7 1 * 8 = 8 1 * 9 = 9
    2 * 2 = 4 2 * 3 = 6 2 * 4 = 8 2 * 5 = 10 2 * 6 = 12 2 * 7 = 14 2 * 8 = 16 2 * 9 = 18
    3 * 3 = 9 3 * 4 = 12 3 * 5 = 15 3 * 6 = 18 3 * 7 = 21 3 * 8 = 24 3 * 9 = 27
    4 * 4 = 16 4 * 5 = 20 4 * 6 = 24 4 * 7 = 28 4 * 8 = 32 4 * 9 = 36
    5 * 5 = 25 5 * 6 = 30 5 * 7 = 35 5 * 8 = 40 5 * 9 = 45
    6 * 6 = 36 6 * 7 = 42 6 * 8 = 48 6 * 9 = 54
    7 * 7 = 49 7 * 8 = 56 7 * 9 = 63
    8 * 8 = 64 8 * 9 = 72
    9 * 9 = 81
    mojo fib.mojo
    0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986,

    前3个例子都顺利执行了。递归计算斐波那契数列的程序执行速度明显比python快。 第4个例子遇到问题

    mojo tri.mojo
    /par/tri.mojo:2:17: error: use of unknown declaration 'StringableRaising'
    struct Triangle(StringableRaising):
    ^~~~~~~~~~~~~~~~~
    /usr/local/bin/mojo: error: failed to parse the provided Mojo source module

    在mojo官方文档中查找StringableRaising,结果是最新版本 0.26.1已经废弃了它。在秘籍的github上提交问题后,很快收到作者回复,并给出了修正的代码 。就是把有问题的那句改成了如下:

    struct Triangle(Writable):

    这个版本代码在mojo 0.26.1上正确执行了。

    在python中安装的mojo不带REPL,如果不带参数执行mojo,结果报错

    mojo
    error: couldn't find a REPL for mojo

    赞(0)
    未经允许不得转载:171主机测评 » 在python3.14中测试mojo语言
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址