V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ryncomaekawa
V2EX  ›  程序员

国产编程语言 MoonBit 的标准库开源

  •  
  •   ryncomaekawa · 260 天前 · 3984 次点击
    这是一个创建于 260 天前的主题,其中的信息可能已经有所发展或是发生改变。

    介绍:
    https://www.moonbitlang.cn/blog/moonbitlang-core-opensource (英文)
    https://mp.weixin.qq.com/s/ZfNys8jZ3R24eN_7PmkiXw (中文)

    仓库:
    https://github.com/moonbitlang/core/blob/main/CONTRIBUTING.md

    Moonbit 是由粤港澳大湾区数字经济研究院(福田)- 基础软件中心打造的 AI 原生的编程语言以及开发者平台,致力于为用户提供一个完整的开发工具链,包括 IDE 、编译器、构建系统、包管理器等。

    36 条回复    2024-04-17 09:40:22 +08:00
    9ki
        1
    9ki  
       260 天前
    关注很久了, 没想到这么不靠谱
    ZSeptember
        2
    ZSeptember  
       260 天前
    支持一下,虽然暂时用不上。
    serverless 的方向我觉得是正确的,但是国内 serverless 的发展确实堪忧。

    如果能解决了国内 serverless 接受度的话,还是很不粗哦的。
    tool2d
        3
    tool2d  
       260 天前
    V 站三大用户:web js 网页开发,小程序,本地应用。

    你这个编程语言 wasm serverless 是剑走偏锋,一点都不主流啊。
    imzcg2
        4
    imzcg2  
       260 天前
    @9ki #1 ?有大佬带队还不靠谱?至少不离谱
    9ki
        5
    9ki  
       260 天前
    @imzcg2 打开仓库看看
    icyalala
        6
    icyalala  
       260 天前
    这是刚开始搞?建了几个壳子,里面文件大部分都还是空的。。
    EchoWhale
        7
    EchoWhale  
       260 天前
    大部分都是空的
    ccc1924
        8
    ccc1924  
       260 天前
    等编译器开源了再说
    lstz
        9
    lstz  
       260 天前 via Android
    相信闭源是暂时的,等到一切准备就绪,请一定开源接受审查和学习
    lstz
        10
    lstz  
       260 天前 via Android
    如果是 kpi 项目可以不考虑开源,但如果真的想做出一番事业,像 Go,Rust 那样的火爆的软件,就必须要开源
    imzcg2
        11
    imzcg2  
       260 天前
    kneo
        12
    kneo  
       260 天前 via Android
    敝帚自珍就可以了,跟风开源没什么意义。
    xieren58
        13
    xieren58  
       260 天前
    哎, 浪费我的纳税钱...
    Binwalker
        14
    Binwalker  
       260 天前
    你就说开没开源吧
    jeasonzuo
        15
    jeasonzuo  
       260 天前
    开了个寂寞
    iold
        16
    iold  
       260 天前   ❤️ 3
    @xieren58 #13 我服了,我打开仓库一看,主要开源了 license headers 。
    zh584728
        17
    zh584728  
       260 天前
    coolcoffee
        18
    coolcoffee  
       260 天前
    不可置评。等十年后再来看吧,时间会给出答案。
    error451
        19
    error451  
       260 天前
    @coolcoffee 十年前由中科院发布的 COS 国产操作系统,我现在还等着呢。 到现在一个字节都没见到。
    nightsky
        20
    nightsky  
       260 天前
    @ZSeptember #2 国内 serverless 贵的要死
    googleplus
        21
    googleplus  
       260 天前
    moonbit = 懵逼 ?
    这个名字好内涵
    没看代码,希望是好东西
    roundgis
        22
    roundgis  
       260 天前 via Android
    代碼在哪裡?
    littlewing
        23
    littlewing  
       260 天前   ❤️ 1
    没看懂开源了个啥?
    runtime 在哪里?就几个基础数据类型和数据结构?我要怎么跑起来
    keepRun
        24
    keepRun  
       260 天前 via Android   ❤️ 1
    关注有一段时间了,也加了内部群,我是非常支持的,起码是做实事的,之前我说应该加上包管理会更好玩一点,没想到不到一个月就加上了,我是支持国产编程语言发展,不过目前来看由于欧美编程语言占据了主要编程市场,所以国产编程语言只能从边边角角切入,毕竟用户不需要第二个 js 编程语言,人们需要的是差异化的编程语言,正如 lua 小众但却在某些领域不可或缺,rust 凭着安全也抢到部分 c++的市场,希望国产编程语言加油吧。
    各位也可以在知乎看到 moonbit 的资讯,希望大家看完一路是怎么发展再评价吧
    keepRun
        25
    keepRun  
       260 天前 via Android
    moonbit 全称月兔,作者以前开发过 rescript ,是个小众但确实被国外一些大公司用的语言,回国后发展国内编程语言,我个人还是希望能成。
    其实国外基础软件这么发达不就是因为基础软件领域的市场被欧美抢占了吗
    比如:操作系统、编译器、编程语言等产品欧美做好了那留给国内就没啥市场,后发者你怎么超越第一名?毕竟有了 c++就不需要第二个 c++,那国内 c++顶尖者想继续发展只有去欧美公司。
    类似的还有国产开源基金会,有了 apache ,国内基金会就难以发展起来,市场被抢占了。
    国产基础软件还有很长的路要走,希望相关人员能加油,脚踏实地的发展
    reeco
        26
    reeco  
       259 天前
    ```
    /// Iterates over each element.
    ///
    /// # Arguments
    ///
    /// - `self`: The array to iterate over.
    /// - `f`: The function to apply to each element.
    ///
    /// # Example
    ///
    /// ```
    /// [1, 2, 3, 4, 5].iter(fn(x){ print("\(x) ") }) //output: 1 2 3 4 5
    /// ```
    pub fn iter[T](self : Array[T], f : (T) -> Unit) {
    let mut i = 0
    while i < self.length() {
    f(self[i])
    i = i + 1
    }
    }
    ```

    rust 味太重了吧
    cus
        27
    cus  
       259 天前 via iPhone
    笑死,欧美编程语言
    israinbow
        28
    israinbow  
       259 天前
    你们这次史诗级开源背后拉到了多少投资? 可以分享一下财报么?
    stfnieJoeng
        29
    stfnieJoeng  
       253 天前
    @imzcg2 点开不是你截图这样啊?跟风黑?
    imzcg2
        30
    imzcg2  
       253 天前
    @stfnieJoeng #29 眼睛有问题,再仔细看看 commit history ,再看看现在代码加了个啥?我愿称之为没加代码
    imzcg2
        31
    imzcg2  
       253 天前
    @stfnieJoeng #29 pub fn Double::from_int(i : Int) -> Double {
    i.to_double()
    }

    pub fn abs(self : Double) -> Double {
    if self < 0.0 {
    -self
    } else {
    self
    }
    }

    /// Returns the sign of the double.
    /// - If the double is positive, returns 1.0.
    /// - If the double is negative, returns -1.0.
    /// - Otherwise, returns the double itself (0.0, -0.0 and NaN).
    pub fn signum(self : Double) -> Double {
    if self < 0.0 {
    -1.0
    } else if self > 0.0 {
    1.0
    } else {
    self // handles 0.0, -0.0, NaN
    }
    }

    fn test_num[T : @num.Num + Debug + Default + Eq](
    x : T,
    y : T,
    x_plus_y : T,
    x_mul_y : T,
    x_minus_y : T,
    x_div_y : T,
    x_signum : T
    ) -> Result[Unit, String] {
    @assertion.assert_eq(x + y, x_plus_y)?
    @assertion.assert_eq(x * y, x_mul_y)?
    @assertion.assert_eq(x - y, x_minus_y)?
    @assertion.assert_eq(x / y, x_div_y)?
    @assertion.assert_eq(x.abs(), T::default() - x)?
    @assertion.assert_eq(x.signum(), x_signum)?
    Ok(())
    }

    test "double.num" {
    let x = -500.0
    let y = 792.0
    test_num(x, y, x + y, x * y, x - y, x / y, -1.0)?
    }
    这代码确定不是小学生写着玩的?
    这开源一点也不真诚
    moonbitlang
        32
    moonbitlang  
       253 天前   ❤️ 1
    @lstz 感谢关注!标准库开源只是我们开源计划的第一步,在下半年我们会进一步对核心代码进行开源
    Hooooooey
        33
    Hooooooey  
       247 天前
    @icyalala 昨天进去看,有一些更新了
    CynicalRose
        34
    CynicalRose  
       247 天前
    国内押宝 serverless 可太头铁了,大公司有自己的路线,中小公司为便宜只会整云服务器,个人开发没有土壤。
    Hooooooey
        35
    Hooooooey  
       245 天前
    @Binwalker 人家也只说了标准库开了,语言很严谨了
    daysv
        36
    daysv  
       225 天前
    一直在更新,我目前对该语言谨慎乐观,走的 ocaml 系的路子
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4702 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 10:02 · PVG 18:02 · LAX 02:02 · JFK 05:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.