MoonBit国产编程语言创建新包和使用新包

在上篇文章开启MoonBit国产编程语言编程之旅-我的第一个Hello MoonBit程序的基础上,MoonBit国产编程语言创建新包和使用新包。

1.可以看到新建的hello_moonbit工程结构如下:

2.首先,在 hello_moonbit工程下创建一个名为 my_lib 的新目录:

bash 复制代码
mkdir my_lib

3.然后在 my_lib 目录下创建三个新文件:

add.mbt文件

bash 复制代码
pub fn add_cal(a: UInt16, b: UInt16) -> UInt16 {
    a + b
}

sub.mbt文件

bash 复制代码
pub fn sub_cal(a: UInt16, b: UInt16) -> UInt16 {
    a - b
}

moon.pkg.json文件

bash 复制代码
{}

在创建这三个文件后,你的目录结构应该如下:

4.在 cmd/main/moon.pkg.json 文件中,导入 username/hello_moonbit/my_lib 包,并将其别名为 my_math:

bash 复制代码
{
  "is-main": true,
  "import": [
    // {
    //   "path": "username/hello_moonbit",
    //   "alias": "lib"
    // },
    {
      "path": "username/hello_moonbit/my_lib",
      "alias": "my_math"
    }
  ]
}

5.可以在 cmd/main/main.mbt 中使用 my_lib 包。

bash 复制代码
///|
fn main {
  //println(@lib.fib(10))

  let result1 = @my_math.add_cal(1,2)
  println("加法计算结果:\{result1}")

  let result2 = @my_math.sub_cal(6,1)
  println("减法计算结果:\{result2}")
}

编译运行,结果如下:

bash 复制代码
 *  正在执行任务: moon run --target wasm-gc cmd/main 

加法计算结果:3
减法计算结果:5
 *  终端将被任务重用,按任意键关闭。 

相关推荐
Android系统攻城狮几秒前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
Linux-lucky12 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
禁默12 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk816312 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
爱莉希雅&&&14 小时前
GitLab 完整学习笔记
linux·运维·服务器
风笙97815 小时前
[文件系统]文件系统挂载与卸载详解
linux
GeW15 小时前
新质生产力路线图解读:数据库性能优化与Linux调优专场
linux·数据库
陈希12317 小时前
Linux 服务器性能排查手册(2026):CPU、内存、磁盘IO、网络四大瓶颈定位
linux·服务器·网络
测试界的小码农20 小时前
【Linux 命令实战(03):文件创建、复制、移动与删除,掌握 touch、mkdir、cp、mv、rm】
linux·服务器·php
byte轻骑兵20 小时前
实战 1:修改 BlueZ 源码,添加自定义开机日志
linux·aiot·bluez·电脑蓝牙·嵌入式蓝牙