国外大神新出了个 Vlang - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xinyu391
V2EX    问与答

国外大神新出了个 Vlang

  •  
  •   xinyu391 2019-06-25 09:39:44 +08:00 14029 次点击
    这是一个创建于 2299 天前的主题,其中的信息可能已经有所发展或是发生改变。

    The V Programming Language 是吸取了 golang,和 Rust 的优点。 还自带 UI 库,支持 C/C++转 vlang,前几天在github上开源了是一个人独立开发的,看上去很牛的样子

    fn main() { areas := ['game', 'web', 'tools', 'science', 'systems', 'GUI', 'mobile'] for area in areas { println('Hello, $area developers!') } } 

    觉得 Rust 很苦涩的,可以尝试下这 vlang。 很多功能都在开发中,github 上看源码,里面有几个函数还是功能内部是用 C 写的 开源后,如果社区能力强大,估计会很有前途。

    51 条回复    2021-12-03 09:14:10 +08:00
    JohnSmith
        1
    JohnSmith  
       2019-06-25 09:47:56 +08:00 via iPhone   1
    ppt 语言啊 这几个 demo 已经为作者赚取了千刀每月的捐赠了
    JohnSmith
        2
    JohnSmith  
       2019-06-25 09:49:00 +08:00 via iPhone
    而且一定要相信编程没有银弹
    Comdex
        3
    Comdex  
       2019-06-25 09:53:56 +08:00 via Android
    D 语言了解下
    Rorysky
        4
    Rorysky  
       2019-06-25 10:00:27 +08:00
    没有大公司背书,都完蛋
    shylockhg
        5
    shylockhg  
       2019-06-25 10:05:01 +08:00
    PL 贾跃亭?
    glues
        6
    glues  
       2019-06-25 10:06:30 +08:00
    看起来像是个改进版的 go
    RYAN0UP
        7
    RYAN0UP  
       2019-06-25 10:11:26 +08:00 via Android
    @glues 听说最开始就是用 go 实现的?
    xinyu391
        8
    xinyu391  
    OP
       2019-06-25 10:22:16 +08:00
    @JohnSmith 编译运行都可以了啊,怎么算 ppt,只是部分功能未实现而已
    whoami9894
        9
    whoami9894  
       2019-06-25 10:33:41 +08:00 via Android
    400kb 编译器,怎么做到的

    For comparison:

    Space required Build time
    Go 525 MB 1m 33s
    Rust 30 GB 45m
    GCC 8 GB 50m
    Clang 90 GB [0] 25m
    Swift 70 GB [1] 90m
    V 0.4 MB 0.4s
    bequt
        10
    bequt  
       2019-06-25 10:40:21 +08:00 via Android
    好多人都说就一个翻译语言
    glues
        11
    glues  
       2019-06-25 10:44:05 +08:00
    @RYAN0UP 不是 go, 已经自举了
    BCy66drFCvk1Ou87
        12
    BCy66drFCvk1Ou87  
       2019-06-25 10:48:02 +08:00
    荷兰的大神
    hwdef
        13
    hwdef  
       2019-06-25 10:55:06 +08:00
    推荐朋友自己写的语言 [Xslang]( https://github.com/kulics/xs) ,
    已经自举,几乎无关键字,觉得比 vlang 更好。
    vlang 火的让人不明所以。
    damngood
        14
    damngood  
       2019-06-25 11:05:19 +08:00
    噢, 原来昨天 twitter 上 Swift 的一位编译器开发者说的是这个哦.
    inhzus
        15
    inhzus  
       2019-06-25 11:05:39 +08:00
    好像是从 .v 翻译为 .c,在 ~/.vlang 里好多翻译之后的 c 代码
    hmzt
        16
    hmzt  
       2019-06-25 11:05:51 +08:00
    @whoami9894 tcc 还 100 多 k 呢,这有什么好惊讶的
    594kJ
        17
    594kJ  
       2019-06-25 11:18:35 +08:00
    还是没明白在火什么?
    貌似在 Hacker News 上引起了很多讨论……
    bequt
        18
    bequt  
       2019-06-25 11:29:21 +08:00 via Android
    求一统天下语言。。。
    wolfie
        19
    wolfie  
       2019-06-25 11:29:48 +08:00
    等大公司接盘或者火了再学。
    hhyvs111
        20
    hhyvs111  
       2019-06-25 11:35:09 +08:00 via iPhone
    @wolfie 那你就晚了
    love
        21
    love  
       2019-06-25 12:05:44 +08:00
    @inhzus 不可能吧,翻译语言怎么可能做到编译目标编译速度更快?
    CSM
        22
    CSM  
       2019-06-25 12:12:51 +08:00 via Android
    先不说代码怎么样,单是营销就做得非常好,还没见着编译器的时候就凭着几个 demo 上了 trending
    hoyixi
        23
    hoyixi  
       2019-06-25 12:25:06 +08:00
    搓手,我准备写一个 SeLang 语言
    Norie
        24
    Norie  
       2019-06-25 12:33:20 +08:00 via Android
    LangLang 占位
    Carseason
        25
    Carseason  
       2019-06-25 12:35:39 +08:00 via iPhone
    doglang 你们谁也别抢我的
    IsaacYoung
        26
    IsaacYoung  
       2019-06-25 12:39:29 +08:00 via iPhone
    faLang 我的了 谢谢
    dobelee
        27
    dobelee  
       2019-06-25 12:48:02 +08:00 via Android
    MomeyLang 占位
    dobelee
        28
    dobelee  
       2019-06-25 12:48:21 +08:00 via Android
    @dobelee MoneyLang
    youngitachi
        29
    youngitachi  
       2019-06-25 13:37:12 +08:00 via Android
    dalang
    somethin
        30
    somethin  
       2019-06-25 14:22:15 +08:00   1
    https://christine.website/blog/v-vaporware-2019-06-23
    Macolor21
        31
    Macolor21  
       2019-06-25 15:59:17 +08:00
    @hwdef 你这个 Quick Review 看得我蛋疼得要死,Vlang 起码简洁明了
    OMGZui
        32
    OMGZui  
       2019-06-25 17:05:28 +08:00
    ZLang 预定
    hwdef
        33
    hwdef  
       2019-06-25 17:05:50 +08:00
    @Macolor21 github 上的 Quick Review 写的功能有点多,显着繁琐。

    `
    main() -> () {
    areas := {"game", "web", "tools", "science", "systems", "GUI", "mobile"}
    areas @ area {
    println("Hello, " area " developers!")
    }
    }
    `

    上面的代码对应楼主贴出来的 vlang 的代码,

    看起来是更简洁的,尤其是迭代上,Xslang 的简洁直观。
    wsseo
        34
    wsseo  
       2019-06-25 17:14:26 +08:00
    看有没有资本接盘,没有就凉凉
    Akkuman
        35
    Akkuman  
       2019-06-25 17:31:03 +08:00 via Android
    @OMGZui Zig lang
    pkookp8
        36
    pkookp8  
       2019-06-25 17:44:00 +08:00 via Android
    以后 lang 前面不是单字母的都不好意思发出来了
    接着某些公司开始拍卖* lang 的所有权
    因为单字母的太贵,有人注册 woaini lang 来论坛里问这个价值多少,一楼回复,交学费
    bruce2000
        37
    bruce2000  
       2019-06-25 19:22:59 +08:00
    为啥等于符号要用冒号加等号,我看好多语言都用,用一个等号或者两个等号也好啊,一个冒号一个等号敲起来多麻烦
    mooncakejs
        38
    mooncakejs  
       2019-06-25 19:26:13 +08:00
    语言得有个好爹才能推进。
    waytostand
        39
    waytostand  
       2019-06-25 20:15:07 +08:00 via iPhone
    看过这个语言的简介,描述的过于美好,可能是个传送阵。。
    yuanxxx
        40
    yuanxxx  
       2019-06-25 21:35:44 +08:00
    Laolang 占坑
    oIMOo
        41
    oIMOo  
       2019-06-25 21:44:01 +08:00
    居然都知道自举是什么意思 (我不知道)……

    以下是轮子哥关于自举的例子:
    https://www.zhihu.com/question/28513473
    BinRelay
        42
    BinRelay  
       2019-06-25 23:01:35 +08:00
    golang 要是自带个好点的 UI 库对我来说就是银弹了
    msg7086
        43
    msg7086  
       2019-06-25 23:24:01 +08:00
    @bruce2000 可能是 Pascal 流传下来的表示法?再往前就不知道是什么了。
    secondwtq
        44
    secondwtq  
       2019-06-26 02:38:11 +08:00 via iPad   1
    @msg7086 https://en.m.wikipedia.org/wiki/Assignment_(computer_science) 看起来是 ALGOL 开始的,C 系用 = 反而像是例外
    ebingtel
        45
    ebingtel  
       2019-06-26 08:24:05 +08:00
    管你们怎么 Lang,我要搞个 DuanLang(断浪):doge
    ebingtel
        46
    ebingtel  
       2019-06-26 08:33:53 +08:00
    @bruce2000 语言设计者,应该非常熟悉 BNF 范式,作为一种准确的描述规范,":="是其中的要求
    feilaoda
        47
    feilaoda  
       2019-06-26 09:40:24 +08:00
    我设计的 DaboLang 语言了解一下?
    zjyl1994
        48
    zjyl1994  
       2019-06-26 10:04:00 +08:00
    这东西没有大公司推生态玩不起来的,我还想弄个 zlang 专门写 webapi 做 json 和 mysql 的连接器呢,但是做完了没生态阿
    FrankHB
        49
    FrankHB  
       2019-06-28 19:04:18 +08:00
    xwlj 被婊。
    cf. V is for Vaporware
    b00tyhunt3r
        50
    b00tyhunt3r  
       2019-06-29 23:57:46 +08:00 via iPad
    @RYAN0UP 用 go 实现。。。。这效率得有多低
    Accessing
        51
    Accessing  
       2021-12-03 09:14:10 +08:00
    @b00tyhunt3r 最初实现的时候,用什么编程语言不重要,是为了验证,Rust 最初就是这样做起来的,它有个回顾自己最初做这个语言的帖子上面说,如果你想创造个新的编程语言,写编译器什么语言顺手就用什么,甚至 Java 都可以。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3394 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 05:04 PVG 13:04 LAX 22:04 JFK 01:04
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86