当前位置:   article > 正文

仓颉语言HelloWorld内测【仅需三步】_vscode 仓颉

vscode 仓颉

2024年6月21日,华为仓颉正式公开发布。还记的19年和王学智老师的团队做过接触,他们反馈说16年我出版的《自己动手构造编译系统》一书对他们的研发很有帮助,身为作者听到这个消息还是很开心的。那时他们还在组建华为编程语言实验室,南大冯新宇教授任首架,方舟编译器也是刚刚发布,版本各种不稳定,记得社区Meetup上有同学反馈说方舟第一个版本连HelloWorld构建流程都不能走完……

五年时光,稍纵即逝。一眨眼,仓颉正式发布了,我也第一时间翻阅了他们的白皮书,好奇华为会把PL设计成什么样子。花了半个下午的时间过完仓颉语言的特性,看到了很多熟悉的编程语言的影子,也看到不少有意思的创意设计。编程语言的好坏本身就是仁者见仁的事情,所以我只给出我自己主观的感受:整体还是加分项更多些,按照100分制,我给85+吧,没给到90是因为有不少好玩的特性还在规划中,希望早一天能看到完整版本的发布。

不少同学看过仓颉白皮书后,都在找SDK从哪下载,HelloWorld怎么跑。仓颉公众号也及时发布了内测的方式,我也亲自走了一遍整个流程,给大家整理为如下三步。

1. 申请内测

关注“仓颉编程语言”微信公众号,回复“SDK”关键词,填写内测申请问卷(姓名、邮箱、gitcode地址等)。【建议提前注册gitcode,github可直接授权登录】

“https://kych.wxcxl.com/jeidu/WDHBLZZHZBQWDBQZZXYMQZMB.html” “https://kych.wxcxl.com/jeidu/WLDYQZMXSLCSSMXSHSYNX.html” “https://kych.wxcxl.com/tingxi/WLDYQSPWQSMHSQKZDMDJCZKYJJM.html” “https://kych.wxcxl.com/kuaixun/JDBTRHYCXHQFQQKKYTQYCXHQM.html” “https://kych.wxcxl.com/redian/WSD9SQYQXSHKKYMXSHKLCSSM.html” “https://kych.wxcxl.com/redian/MTKYXSYQHKMZMXSYQHK.html” “https://kych.wxcxl.com/yanqi/WDYQSYLSMDCQZSZDMHBHBZ.html” “https://kych.wxcxl.com/tingxi/1YJJJRXYKXSHKXYKZDXSMTS.html” “https://kych.wxcxl.com/toutiao/3JTKYYQJTZMXSYQHK.html” “https://kych.wxcxl.com/xieshang/SBZMTQHKQBJQTQHKYWYJM.html” “https://kych.wxcxl.com/anli/FXJXSFQHKZMHECYQHZY.html” “https://kych.wxcxl.com/anli/GSXYKYQLBDTYSMYZHGHBHBQS.html” “https://kych.wxcxl.com/anli/WLDQK3WDYQLHZYYQHBSZMB.html” “https://kych.wxcxl.com/kuaixun/MSXYKYQJYFKYQHYXJRM.html” “https://kych.wxcxl.com/anli/JXXYKYQ4WLXSDSZMB.html” “https://kych.wxcxl.com/yanqi/MSXYKYQ1GYMHHZYLXZMS.html” “https://kych.wxcxl.com/jeidu/MSXYKYQXSXYZMQYQXSDJQSSM.html” “https://kych.wxcxl.com/xieshang/PAXYKYQ1WDDYTLXSDSHGSSM.html” “https://kych.wxcxl.com/toutiao/AYHYQ4THZMYCSHBHSM.html” “https://kych.wxcxl.com/anli/DXMQ5WYQ3GYYSMHGYQ3GYYZMB.html” “https://kych.wxcxl.com/yanqi/JXXYKYQ8TZMBYQ8TDLXSDS.html” “https://kych.wxcxl.com/redian/ZMXSPAXYKYQYQKYBHM.html” “https://kych.wxcxl.com/kuaixun/ZXXYKYQSTBSSZDMNGXSM.html” “https://kych.wxcxl.com/yanqi/PPD8YQLXSDSHBHBQS.html” “https://kych.wxcxl.com/kuaixun/GFXYKYQ3GYHBSYSMHGRHBMYXXY.html” “https://kych.wxcxl.com/anli/MSXYKYJCYQJMYQDLXKYJMM.html” “https://kych.wxcxl.com/anli/PAXYKYQ9TYSHBCSMRHYDCS.html” “https://kych.wxcxl.com/yanqi/ZLJRZMZDSFXSYQKYYQDJ.html” “https://kych.wxcxl.com/jeidu/PPDYQ5YDHGSSMXJRCSHFM.html” “https://kych.wxcxl.com/xieshang/GSXYKYQ2ZMBYSMHG.html” “https://kych.wxcxl.com/anli/ZXXYK2YQLSGYZMJJHDJRYYXM.html” “https://kych.wxcxl.com/tingxi/JTXYK9WYQZMBYQHYSMHG.html” “https://kych.wxcxl.com/tingxi/GFXYKYQ4THDYYXMYQYSMHG.html” “https://kych.wxcxl.com/yanqi/YZXYKYQ2NZMSLXRHXSHK.html” “https://kych.wxcxl.com/kuaixun/PPDYQYQKYZMHBHYXJR.html” “https://kych.wxcxl.com/yanqi/AYHYQSGYZMXSHBSHZMY.html” “https://kych.wxcxl.com/jeidu/ZXXYKYQ7THZDKYMYQ7TYZMB.html” “https://kych.wxcxl.com/tingxi/DYGSXYKYQXSFQLCSSMYQHYSMHG.html” “https://kych.wxcxl.com/yanqi/AYHYQLNLZMBYQLNLYSMHG.html” “https://kych.wxcxl.com/toutiao/NFTGXSFSJJJXKDFZWT.html” “https://kych.wxcxl.com/anli/JXKDYQHKYNXHG.html” “https://kych.wxcxl.com/jeidu/JKRNFQQJXKDLXFXJM.html” “https://kych.wxcxl.com/yanqi/RHYJXKDXSFQHK.html” “https://kych.wxcxl.com/xieshang/WYJXKDYQDKZYSQHKKXQ.html” “https://kych.wxcxl.com/anli/RHZXJXKDYQDKDHKFS.html” “https://kych.wxcxl.com/kuaixun/XSJXKDQKZMJJ.html” “https://kych.wxcxl.com/kuaixun/JXKDYQZWNFYQHK.html” “https://kych.wxcxl.com/kuaixun/QKDJSJXKDYQ.html” “https://kych.wxcxl.com/redian/JXKDYQXSBZRHSQ.html” “https://kych.wxcxl.com/jeidu/GDXYKQKCGYWHBZJFLZRM.html” “https://kych.wxcxl.com/xieshang/GDXYKZWRHJXHLGHHGL.html” “https://kych.wxcxl.com/tingxi/GDXYKQKKYFQHKMLXFYSDS.html” “https://kych.wxcxl.com/toutiao/GDXYKYQHRHBMBCS.html” “https://kych.wxcxl.com/yanqi/GDXYKQKSFKYTGJDPTJJ.html” “https://kych.wxcxl.com/jeidu/GDXYKYQHYXDKSQM.html” “https://kych.wxcxl.com/kuaixun/GDXYKQKSFKYSQKXQ.html” “https://kych.wxcxl.com/xieshang/GDXYKYQHRHSQHQFK.html” “https://kych.wxcxl.com/toutiao/GDXYKYQYTHYSMHG.html” “https://kych.wxcxl.com/tingxi/GDXYKJKYQHRHBMLXFXDZJ.html” “https://kych.wxcxl.com/anli/GDXYKQKTQDJHBDC.html” “https://kych.wxcxl.com/redian/GDXYKJQYQHBQSM.html” “https://kych.wxcxl.com/tingxi/GDXYKFZSFHDZBJRHMD.html” “https://kych.wxcxl.com/yanqi/GDXYKYQCGSGYHCSNXFY.html” “https://kych.wxcxl.com/anli/GDXYKFZLJGDZMYD.html” “https://kych.wxcxl.com/yanqi/ZWHMDZDGDXYKZMBL.html” “https://kych.wxcxl.com/toutiao/GDXYKQKKYTGDKJJM.html” “https://kych.wxcxl.com/yanqi/GDXYKDKNFSQFQFK.html” “https://kych.wxcxl.com/jeidu/GDXYKYQZMJJHYSMHG.html” “https://kych.wxcxl.com/xieshang/GDXYKQKBHHYXGRZXM.html” “https://kych.wxcxl.com/anli/DKQKYLDZMBRHYXJQFZYL.html” “https://kych.wxcxl.com/redian/RHHLGHFZJJXYDYQWT.html” “https://kych.wxcxl.com/jeidu/RJDQKFSWYJZMBWYJRHJS.html” “https://kych.wxcxl.com/xieshang/HBSFZRJDSFKYTGQTDKJXCH.html” “https://kych.wxcxl.com/toutiao/HBSXYDHBCSMRHYDCSDKR.html” “https://kych.wxcxl.com/xieshang/XYDYQSTHYSMYXYQHKGRHCL.html” “https://kych.wxcxl.com/yanqi/RHBMYQQKXRWFCSDFZJD.html” “https://kych.wxcxl.com/redian/RJDYQDZXYPJXJRHHFLHXY.html” “https://kych.wxcxl.com/tingxi/QKRJDYQHSFYXGRFDSQ.html” “https://kych.wxcxl.com/jeidu/XYDYQHMTHYDSFXQKJEHZYZJ.html” “https://kych.wxcxl.com/yanqi/HBSFZRJDSFKYTGXSJJQKWT.html” “https://kych.wxcxl.com/anli/RJDYQWTHZCXYHMDMRHXFZXJL.html” “https://kych.wxcxl.com/xieshang/QKJGXYDNFTGMXFQHKFA.html” “https://kych.wxcxl.com/tingxi/XYDYQRHSQZQYCHKQXSFKX.html” “https://kych.wxcxl.com/kuaixun/FZLLRHBTRJDDQKKR.html” “https://kych.wxcxl.com/yanqi/HBSRJDHBQSMYQQKHYFFLJFM.html” “https://kych.wxcxl.com/jeidu/XYDYQYTLXDSYQHKHZJDSCB.html” “https://kych.wxcxl.com/xieshang/RJDYQLZMBRHJJQKWT.html” “https://kych.wxcxl.com/yanqi/HBSXYDHYSMHGYQQKHCSNXFY.html” “https://kych.wxcxl.com/jeidu/XYDYQZMBGFZRHCL.html” “https://kych.wxcxl.com/yanqi/JGPYQHFXWFSHYGRHYDQKWT.html” “https://kych.wxcxl.com/toutiao/ZYXFJKQKCGQXRHCLFZKJ.html” “https://kych.wxcxl.com/xieshang/LXPYJKDLXRHJSYQLXYSDS.html” “https://kych.wxcxl.com/jeidu/ZYXFDKQKBHDZXJLYSMYX.html” “https://kych.wxcxl.com/yanqi/RHQBJKPYASHKBMYQDFX.html” “https://kych.wxcxl.com/yanqi/ZYXFJKSFYYQFXYQHCSSMHG.html” “https://kych.wxcxl.com/anli/JKLXPYHCXYQYGZYCCHK.html” “https://kych.wxcxl.com/toutiao/JKGPYHYQBHKZYJJ.html” “https://kych.wxcxl.com/yanqi/ZYXFDKSFHDZCQFZRHCLQKWT.html” “https://kych.wxcxl.com/xieshang/ZYXFJKYQHCSDSFXRHJSLXFD.html” “https://kych.wxcxl.com/toutiao/ZYXFJKQKZYCNWQQCRHBMYQ.html” “https://kych.wxcxl.com/xieshang/LXPYJKHZCFZFXMRHBMQKWT.html” “https://kych.wxcxl.com/toutiao/RHTSCLPYZJDJKJFHQKWT.html” “https://kych.wxcxl.com/redian/JKLLXPYQBTQYGZYYD.html” “https://kych.wxcxl.com/jeidu/ZYXFJKYQCLFSSSMYQDKRHZH.html” “https://kych.wxcxl.com/yanqi/ZYXFDKHPYBHZYJJFZWT.html” “https://kych.wxcxl.com/yanqi/LXPYJKYYQZMBYQLXRHJS.html” “https://kych.wxcxl.com/redian/ZYXFYQDKHYSMYXYQLXSDS.html” “https://kych.wxcxl.com/xieshang/ZYXFJKSFDZFZLLRHJJQKWT.html” “https://kych.wxcxl.com/anli/JKHRHLXPYHKYQHZMCL.html” “https://kych.wxcxl.com/kuaixun/ZWYQQJKYJXDKSQM.html” “https://kych.wxcxl.com/jeidu/YQHKHNJXYKRHHFZC.html” “https://kych.wxcxl.com/anli/NJXYKQKRHBMTLJTCW.html” “https://kych.wxcxl.com/toutiao/RHCLNJXYKYQHDFZWT.html” “https://kych.wxcxl.com/yanqi/ZWYQSFHDZNJXYKZHBGB.html” “https://kych.wxcxl.com/tingxi/NJXYKQKCGYDEDHZYCL.html” “https://kych.wxcxl.com/anli/ZWYQHSFKYSQFQFK.html” “https://kych.wxcxl.com/xieshang/YQFKSFHDNJXYKXYPJCSYX.html” “https://kych.wxcxl.com/toutiao/RHBMNJXYKQKYQ.html” “https://kych.wxcxl.com/yanqi/NJXYKYQYGYHSDSMCF.html” “https://kych.wxcxl.com/kuaixun/ZWYQHYRHZXSQNJXYK.html” “https://kych.wxcxl.com/kuaixun/NJXYKQKYQYNHJCSDSLXFJ.html” “https://kych.wxcxl.com/yanqi/ZWYQWHHDZXYKZHBDJ.html” “https://kych.wxcxl.com/tingxi/NJXYKJKYQXYCDNXHG.html” “https://kych.wxcxl.com/jeidu/QKYQQKXNJXYKDDKSPHYZYDYX.html” “https://kych.wxcxl.com/redian/ZWYQHYGRHHKNJXYKYSMGD.html” “https://kych.wxcxl.com/redian/NJXYKYQFJSFKYJMRHSQ.html” “https://kych.wxcxl.com/yanqi/NJXYKQKRHJJYQSFHBFJ.html” “https://kych.wxcxl.com/xieshang/ZWYQZMBNJXYKGRHCL.html” “https://kych.wxcxl.com/tingxi/NJXYKQKSFHYXDKSQ.html” “https://kych.wxcxl.com/jeidu/PDXYKZWYQQKXNFSQMXYHHKFA.html” “https://kych.wxcxl.com/toutiao/PDXYKQKAJXYZLSMLSFHHGM.html” “https://kych.wxcxl.com/xieshang/YNXFSKYJJPDXYKYQHKWT.html” “https://kych.wxcxl.com/yanqi/PDXYKFZLJDYDEDHBQSM.html” “https://kych.wxcxl.com/jeidu/YQHKPDXYKSFHYXGRDZXJL.html” “https://kych.wxcxl.com/toutiao/PDXYKJKYQHRHYYXXSHKJH.html” “https://kych.wxcxl.com/redian/RHSQPDXYKZWJQHKFD.html” “https://kych.wxcxl.com/redian/PDXYKDKYQDJHCSFLHG.html” “https://kych.wxcxl.com/anli/YQWHPDXYKQKSFHBLRSXHMD.html” “https://kych.wxcxl.com/anli/FYHDPDXYKJDQKAJXDJM.html” “https://kych.wxcxl.com/xieshang/PDXYKYQHKKYBLFQFKM.html” “https://kych.wxcxl.com/tingxi/PDXYKZWYQYGYHCSDSLXFX.html” “https://kych.wxcxl.com/jeidu/PDXYKFZLJDJHBCSJGJR.html” “https://kych.wxcxl.com/tingxi/NFTGDKLCHPDXYKYQQK.html” “https://kych.wxcxl.com/jeidu/RHBMPDXYKDKQKDZDFLJF.html” “https://kych.wxcxl.com/kuaixun/PDXYKDKYQCGSGYSFKSQZQ.html” “https://kych.wxcxl.com/jeidu/PDXYKZWSFYXGRZXPF.html” “https://kych.wxcxl.com/xieshang/QKDQBHPDXYKGSHCQSMCS.html” “https://kych.wxcxl.com/jeidu/PDXYKQZAJSRHCLD.html” “https://kych.wxcxl.com/yanqi/JDYYQFXPDXYKYQHYZYDHG.html” “https://kych.wxcxl.com/jeidu/HYDQKYLGDZMJJ.html” “https://kych.wxcxl.com/anli/RHGHHYDFZDHKJH.html” “https://kych.wxcxl.com/jeidu/HYDQKRHKSTLKJ.html” “https://kych.wxcxl.com/tingxi/JJFAHYDYQSFYFLHG.html” “https://kych.wxcxl.com/anli/GRHYDHYDFZDJPX.html” “https://kych.wxcxl.com/tingxi/JJHYDFZWTXYZYNXSX.html” “https://kych.wxcxl.com/yanqi/HYDDKYQHDLNXHG.html” “https://kych.wxcxl.com/xieshang/RHBMHYDFZYGYD.html” “https://kych.wxcxl.com/tingxi/WLCHHYDDKYNXKXFA.html” “https://kych.wxcxl.com/redian/HYDQKCGXEZMB.html” “https://kych.wxcxl.com/yanqi/HYDFZYZYXSHZMP.html” “https://kych.wxcxl.com/tingxi/RHJJHYDDKYQDKR.html” “https://kych.wxcxl.com/jeidu/JJHYDFZWTDYXFFSSM.html” “https://kych.wxcxl.com/tingxi/KSJJHYDQKWTDBFSSM.html” “https://kych.wxcxl.com/yanqi/HYDQKDDGZMCL.html” “https://kych.wxcxl.com/yanqi/HYDFZGZYMYFFJQYL.html” “https://kych.wxcxl.com/kuaixun/RHCLHYDYQDQKWT.html” “https://kych.wxcxl.com/jeidu/JJFAYQHYDDKGZMB.html” “https://kych.wxcxl.com/xieshang/WLCHHYDDKZMB.html” “https://kych.wxcxl.com/tags-HYDYQ.html” “https://kych.wxcxl.com/tags-QKCL.html” “https://kych.wxcxl.com/tags-HYD.html” “https://kych.wxcxl.com/tags-FZJQ.html” “https://kych.wxcxl.com/tags-HYDFZJJFA.html” “https://kych.wxcxl.com/tags-YXZWGLCL.html” “https://kych.wxcxl.com/tags-HYDYQJJ.html” “https://kych.wxcxl.com/tags-DKYQCLFF.html” “https://kych.wxcxl.com/tags-HYDZWJJFA.html” “https://kych.wxcxl.com/tags-SHPZHFCL.html” “https://kych.wxcxl.com/tags-HYDQK.html” “https://kych.wxcxl.com/tags-QKXEWT.html” “https://kych.wxcxl.com/tags-GRDKCHCL.html” “https://kych.wxcxl.com/tags-HYDFXKZ.html” “https://kych.wxcxl.com/tags-FZGLCL.html” “https://kych.wxcxl.com/tags-HYDYQHG.html” “https://kych.wxcxl.com/tags-DKYQYX.html” “https://kych.wxcxl.com/tags-ZWZZYZYSX.html” “https://kych.wxcxl.com/tags-HYDFXGL.html” “https://kych.wxcxl.com/tags-FZJJYDCL.html” “https://kych.wxcxl.com/tags-QKJJ.html” “https://kych.wxcxl.com/tags-HYDFZGH.html” “https://kych.wxcxl.com/tags-HKJHZD.html” “https://kych.wxcxl.com/tags-QKYL.html” “https://kych.wxcxl.com/tags-YQFX.html” “https://kych.wxcxl.com/tags-PDXYKYQHG.html” “https://kych.wxcxl.com/tags-PDXYKQZ.html” “https://kych.wxcxl.com/tags-AJCL.html” “https://kych.wxcxl.com/tags-XYKQK.html” “https://kych.wxcxl.com/tags-FLZT.html” “https://kych.wxcxl.com/tags-PDXYK.html” “https://kych.wxcxl.com/tags-GRZXPF.html” “https://kych.wxcxl.com/tags-PDXYKYQ.html” “https://kych.wxcxl.com/tags-XYKDKZQSQ.html” “https://kych.wxcxl.com/tags-PDXYKDK.html” “https://kych.wxcxl.com/tags-FLJFYF.html” “https://kych.wxcxl.com/tags-PDXYK.html” “https://kych.wxcxl.com/tags-XYKYQ.html” “https://kych.wxcxl.com/tags-CSJGJRSJ.html” “https://kych.wxcxl.com/tags-DKCH.html” “https://kych.wxcxl.com/tags-PDXYKYQLX.html” “https://kych.wxcxl.com/tags-XYKFXJS.html” “https://kych.wxcxl.com/tags-DJ.html” “https://kych.wxcxl.com/tags-XYKJDQKA.html” “https://kych.wxcxl.com/tags-YQHKFQFK.html” “https://kych.wxcxl.com/tags-FLHG.html” “https://kych.wxcxl.com/tags-SXHMD.html” “https://kych.wxcxl.com/tags-PDXYKZWJQ.html” “https://kych.wxcxl.com/tags-HKFDYH.html” “https://kych.wxcxl.com/tags-PDXYKYQXS.html” “https://kych.wxcxl.com/tags-YXHKJHDZ.html” “https://kych.wxcxl.com/tags-XYKYQHK.html” “https://kych.wxcxl.com/tags-GRZXJLYX.html” “https://kych.wxcxl.com/tags-PD.html” “https://kych.wxcxl.com/tags-XYKFZSS.html” “https://kych.wxcxl.com/tags-PDXYKQK.html” “https://kych.wxcxl.com/tags-LSF.html” “https://kych.wxcxl.com/tags-XYKYQHKJJFA.html” “https://kych.wxcxl.com/tags-PDXYKYQYDCS.html” “https://kych.wxcxl.com/tags-MXYHHK.html” “https://kych.wxcxl.com/tags-DKSQ.html” “https://kych.wxcxl.com/tags-ZWYQCL.html” “https://kych.wxcxl.com/tags-NJXYKGL.html” “https://kych.wxcxl.com/tags-NJ.html” “https://kych.wxcxl.com/tags-XYKYQFJJM.html” “https://kych.wxcxl.com/tags-YQQK.html” “https://kych.wxcxl.com/tags-XYKDKSP.html” “https://kych.wxcxl.com/tags-XYKYQHG.html” “https://kych.wxcxl.com/tags-YQZW.html” “https://kych.wxcxl.com/tags-XYKZHDJ.html” “https://kych.wxcxl.com/tags-XYKQKYQLXFJ.html” “https://kych.wxcxl.com/tags-XYKSQ.html” “https://kych.wxcxl.com/tags-CF.html” “https://kych.wxcxl.com/tags-XYKYQGL.html” “https://kych.wxcxl.com/tags-HKCLGH.html” “https://kych.wxcxl.com/tags-YQFKXYPJ.html” “https://kych.wxcxl.com/tags-ZWYQ.html” “https://kych.wxcxl.com/tags-FQFK.html” “https://kych.wxcxl.com/tags-YQHK.html” “https://kych.wxcxl.com/tags-XYKZHGB.html” “https://kych.wxcxl.com/tags-XYKYQFZCL.html” “https://kych.wxcxl.com/tags-XYKZWGL.html” “https://kych.wxcxl.com/tags-JTCWFXFF.html” “https://kych.wxcxl.com/tags-XYKHFZC.html” “https://kych.wxcxl.com/tags-CKFF.html” “https://kych.wxcxl.com/tags-YQCF.html” “https://kych.wxcxl.com/tags-ZYXFJK.html” “https://kych.wxcxl.com/tags-FZLL.html” “https://kych.wxcxl.com/tags-YQDK.html” “https://kych.wxcxl.com/tags-YQLX.html” “https://kych.wxcxl.com/tags-LXJS.html” “https://kych.wxcxl.com/tags-CSCL.html” “https://kych.wxcxl.com/tags-FLTJ.html” “https://kych.wxcxl.com/tags-YQCL.html” “https://kych.wxcxl.com/tags-ZHDK.html” “https://kych.wxcxl.com/tags-JKJF.html” “https://kych.wxcxl.com/tags-PYGXGL.html” “https://kych.wxcxl.com/tags-JKJFCL.html” “https://kych.wxcxl.com/tags-PYQKWTJJ.html” “https://kych.wxcxl.com/tags-FZFX.html” “https://kych.wxcxl.com/tags-QKWT.html” “https://kych.wxcxl.com/tags-ZYXFDK.html” “https://kych.wxcxl.com/tags-YQBM.html” “https://kych.wxcxl.com/tags-YQFX.html” “https://kych.wxcxl.com/tags-LXFDJS.html” “https://kych.wxcxl.com/tags-CQFZ.html” “https://kych.wxcxl.com/tags-JZJJ.html” “https://kych.wxcxl.com/tags-JKXY.html” “https://kych.wxcxl.com/tags-FXKZ.html” “https://kych.wxcxl.com/tags-ZYXFD.html” “https://kych.wxcxl.com/tags-ZXJLYX.html” “https://kych.wxcxl.com/tags-JKLX.html” “https://kych.wxcxl.com/tags-YQFZ.html” “https://kych.wxcxl.com/tags-ZWJJFA.html” “https://kych.wxcxl.com/tags-ZWZT.html” “https://kych.wxcxl.com/tags-XYDYQ.html” “https://kych.wxcxl.com/tags-FZCL.html” “https://kych.wxcxl.com/tags-ZWJJ.html” “https://kych.wxcxl.com/tags-ZNJ.html” “https://kych.wxcxl.com/tags-XYDYQFY.html” “https://kych.wxcxl.com/tags-XYDYQCB.html” “https://kych.wxcxl.com/tags-QSFX.html” “https://kych.wxcxl.com/tags-YQQKFLJF.html” “https://kych.wxcxl.com/tags-ZWZZ.html” “https://kych.wxcxl.com/tags-CWGH.html” “https://kych.wxcxl.com/tags-XYDZQSQ.html” “https://kych.wxcxl.com/tags-HKQXYCKXX.html” “https://kych.wxcxl.com/tags-XYDMXFQ.html” “https://kych.wxcxl.com/tags-QKJGHKFA.html” “https://kych.wxcxl.com/tags-XYXF.html” “https://kych.wxcxl.com/tags-XSJJQK.html” “https://kych.wxcxl.com/tags-FZWT.html” “https://kych.wxcxl.com/tags-FX.html” “https://kych.wxcxl.com/tags-QKZJ.html” “https://kych.wxcxl.com/tags-YQHKCL.html” “https://kych.wxcxl.com/tags-YQHKFDSQYX.html” “https://kych.wxcxl.com/tags-YQQKGL.html” “https://kych.wxcxl.com/tags-FZFXYF.html” “https://kych.wxcxl.com/tags-XYDYQYX.html” “https://kych.wxcxl.com/tags-YQHKCL.html” “https://kych.wxcxl.com/tags-JDWYJ.html” “https://kych.wxcxl.com/tags-WYJJSFF.html” “https://kych.wxcxl.com/tags-FZGH.html” “https://kych.wxcxl.com/tags-XYDYQJJ.html” “https://kych.wxcxl.com/tags-FZGL.html” “https://kych.wxcxl.com/tags-GDXYK.html” “https://kych.wxcxl.com/tags-GRZX.html” “https://kych.wxcxl.com/tags-HG.html” “https://kych.wxcxl.com/tags-QKDKJJ.html” “https://kych.wxcxl.com/tags-ZWHMD.html” “https://kych.wxcxl.com/tags-GDXYKBL.html” “https://kych.wxcxl.com/tags-CWFXKZ.html” “https://kych.wxcxl.com/tags-YQFY.html” “https://kych.wxcxl.com/tags-XYKHK.html” “https://kych.wxcxl.com/tags-FLSS.html” “https://kych.wxcxl.com/tags-FZHMD.html” “https://kych.wxcxl.com/tags-GDXYKQK.html” “https://kych.wxcxl.com/tags-TQDC.html” “https://kych.wxcxl.com/tags-GDXYKYQ.html” “https://kych.wxcxl.com/tags-FXBMFF.html” “https://kych.wxcxl.com/tags-XYJL.html” “https://kych.wxcxl.com/tags-HQFKSQ.html” “https://kych.wxcxl.com/tags-KXQSQ.html” “https://kych.wxcxl.com/tags-JDPTJJ.html” “https://kych.wxcxl.com/tags-BMCS.html” “https://kych.wxcxl.com/tags-GDXYKFQHK.html” “https://kych.wxcxl.com/tags-LXFYJS.html” “https://kych.wxcxl.com/tags-HLGHZW.html” “https://kych.wxcxl.com/tags-GDXYK.html” “https://kych.wxcxl.com/tags-QKZZ.html” “https://kych.wxcxl.com/tags-JXKDYQXS.html” “https://kych.wxcxl.com/tags-SQBZLC.html” “https://kych.wxcxl.com/tags-JSYXKD.html” “https://kych.wxcxl.com/tags-JXKD.html” “https://kych.wxcxl.com/tags-YQHK.html” “https://kych.wxcxl.com/tags-XS.html” “https://kych.wxcxl.com/tags-KDQK.html” “https://kych.wxcxl.com/tags-JXKD.html” “https://kych.wxcxl.com/tags-YQHKFS.html” “https://kych.wxcxl.com/tags-HKKXQ.html” “https://kych.wxcxl.com/tags-KDLXFXJM.html” “https://kych.wxcxl.com/tags-JKRQY.html” “https://kych.wxcxl.com/tags-JXKDXS.html” “https://kych.wxcxl.com/tags-FQHK.html” “https://kych.wxcxl.com/tags-YQHKHG.html” “https://kych.wxcxl.com/tags-XSJJ.html” “https://kych.wxcxl.com/tags-JXKDFZ.html” “https://kych.wxcxl.com/tags-AYHYQ.html” “https://kych.wxcxl.com/tags-YQHG.html” “https://kych.wxcxl.com/tags-DYGSXYK.html” “https://kych.wxcxl.com/tags-YQXSFQLC.html” “https://kych.wxcxl.com/tags-ZDHKE.html” “https://kych.wxcxl.com/tags-AYHYQXS.html” “https://kych.wxcxl.com/tags-YQHKHG.html” “https://kych.wxcxl.com/tags-YQHKXYJL.html” “https://kych.wxcxl.com/tags-YZXYK.html” “https://kych.wxcxl.com/tags-YQLXXSHK.html” “https://kych.wxcxl.com/tags-XYKHG.html” “https://kych.wxcxl.com/tags-JTXYKYQ.html” “https://kych.wxcxl.com/tags-XYYX.html” “https://kych.wxcxl.com/tags-PPD.html” “https://kych.wxcxl.com/tags-ZLJR.html” “https://kych.wxcxl.com/tags-DSFXSYQ.html” “https://kych.wxcxl.com/tags-CSYD.html” “https://kych.wxcxl.com/tags-MSXYK.html” “https://kych.wxcxl.com/tags-YQJM.html” “https://kych.wxcxl.com/tags-YQ.html” “https://kych.wxcxl.com/tags-XSHK.html” “https://kych.wxcxl.com/tags-DXMYQHG.html” “https://kych.wxcxl.com/tags-YQHKYD.html” “https://kych.wxcxl.com/tags-CSSM.html” “https://kych.wxcxl.com/tags-YQXSXY.html” “https://kych.wxcxl.com/tags-YQFK.html” “https://kych.wxcxl.com/tags-WLDYQ.html” “https://kych.wxcxl.com/tags-FXJXSFQHK.html” “https://kych.wxcxl.com/tags-ECYQHG.html” “https://kych.wxcxl.com/tags-SBTQHK.html” “https://kych.wxcxl.com/tags-TQHKWYJ.html” “https://kych.wxcxl.com/tags-YJJXYKXSHK.html” “https://kych.wxcxl.com/tags-XYKTSDY.html” “https://kych.wxcxl.com/tags-WDYQ.html” “https://kych.wxcxl.com/tags-SMDC.html” “https://kych.wxcxl.com/tags-MTYQHK.html” “https://kych.wxcxl.com/tags-XSHKLC.html” “https://kych.wxcxl.com/tags-WSD.html” “https://kych.wxcxl.com/tags-YQXSHKLC.html” “https://kych.wxcxl.com/tags-JDBTYCXHQ.html” “https://kych.wxcxl.com/tags-TQHKGD.html” “https://kych.wxcxl.com/tags-WLDXSHK.html” “https://kych.wxcxl.com/tags-YQXSHS.html” “https://kych.wxcxl.com/tags-CZSM.html” “https://kych.wxcxl.com/tags-WDWY.html” “https://kych.wxcxl.com/tags-QZZXWZJHK.html”

接下来就是等待邮件回复,虽然说是2-3个工作日,实际上当天(若干小时)就能收到邮件。下载邮件里的保密函文件,打印、签字、扫描成pdf,按照邮件要求回复即可。

再次收到邮件回复(若干小时),点击“申请加入仓颉编程语言官方社区”,等待管理员审核。

管理审核成功后,即可访问仓颉社区:GitCode - 全球开发者的开源社区,开源代码托管平台 。仓颉支持VSCode开发环境,社区提供了VSCode插件CangjieVSCodePlugin,以及Linux/Windows/MacOS版本的SDK(CangjieSDK是Linux版本)。

2. 准备环境

首先是安装SDK。因为我是在Mac上测试,需要下载CangjieSDK-Mac项目,选择所需的版本包,解压到你喜欢的目录,如/usr/local/cangjie。另外文件包cangjie-0.51.4-docs-html.tar.gz提供了完整的语言规范、开发指南、工具文档等资料,对开发很有帮助。

Intel芯片的Mac版本SDK文件(Cangjie-0.51.4-darwin_x64.tar.gz)内容如下:

  1. $ pwd
  2. /usr/local/cangjie
  3. $ ls
  4. bin envsetup.sh lib modules runtime third_party tools

安装VSCode(略),下载仓颉VSCode插件解压,使用VSIX方式安装插件,建议重启VSCode保证生效。

配置仓颉VSCode插件,填写SDK地址/usr/local/cangjie,SDK类型默认CJNative(CJVM只有Linux系统支持)。

3. 开发测试

使用“Command+Shift+P”快捷键创建仓颉项目,目前支持快捷引导创建和可视化创建两种方式,根据自己的喜好自行选择。

工程创建完后的目录结构很简单,只有main.cj源码文件和cjpm.toml打包配置两个文件。编译构建完后,会生成cjpm.lock文件和target目录(内含构建好的可执行文件)。

最后,使用如下示例代码验证我们自己的仓颉HelloWorld。

  1. extend String {
  2. public func map(mapper: (String) -> String): String {
  3. mapper(this)
  4. }
  5. }
  6. main() {
  7. var str = "Hello World !"
  8. str = str.map() {
  9. s => "Cangjie: " + s
  10. }
  11. println(str)
  12. }

这段代码使用了仓颉语言两个有意思的特性:

  • 类型扩展:使用extend可以对任意类型进行API扩展。这里我们给系统的String类型增加了一个map函数,它接收一个lambda表达式参数。
  • 尾随Lambda:一种语法糖,如果lambda表达式是函数的最后一个参数,则可以直接追加lambda语句块到函数调用尾部。这里调用str.map()时直接将lambda表达式逻辑写在map()调用之后,而非括号内。

最后,直接运行测试即可。

仓颉的语言设计上融合了不少主流编程语言的特点,如python、go、js等。另外有几个待发布的特性比较有趣,可以稍微期待一下,如eDSL、模板宏、跨语言调试和内置AI DSL等。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/794873
推荐阅读
相关标签
  

闽ICP备14008679号