凹语言 —— 使用 Go 和 Rust 语法的中英双语 C++
凹语言™(凹读音“Wa”)是国内 Go 开发者设计的实验性编程语言。
设计目标
- 披着 Go 和 Rust 语法外衣的 C++ 语言;
- 凹语言™源码文件后缀为
.wa
; - 凹语言™编译器兼容 WaGo 语法。WaGo 是 Go 真子集。使用 WaGo 语法的源码文件后缀为
.wa.go
。凹语法与 WaGo 语法在 AST 层面一致; - 凹语言™支持中文/英文双语关键字,即任一关键字均有中文及英文版,二者在语法层面等价。
更多细节请参考 凹语言™项目目标。
处理过程
凹编译器的工作过程如下图所示:
例子: 打印素数
打印 30 以内的素数:
// 版权 @2021 凹语言™ 作者。保留所有权利。 fn main() { for n := 2; n <= 30; n = n + 1 { let isPrime int = 1 for i := 2; i*i <= n; i = i + 1 { if x := n % i; x == 0 { isPrime = 0 } } if isPrime != 0 { println(n) } } }
运行并输出结果:
$ go run main.go run _examples/prime 2 3 5 7 11 13 17 19 23 29
更多例子

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
每日一博 | 大众点评搜索相关性技术探索与实践
搜索相关性用于衡量Query和Doc的相关程度,是搜索引擎的重要环节,本文主要讲述大众点评搜索团队在相关性计算上的技术探索和实践,通过多相似矩阵模型结构、多阶段训练等方法提升预训练模型在相关性问题上的效果,同时解决基于交互的模型在线预测的性能问题,希望为从事相关工作的同学能够带来一些启发或者帮助。 1. 背景 点评搜索是大众点评App的核心入口之一,用户通过搜索来满足不同场景下对生活服务类商户的找店需求。搜索的长期目标是持续优化搜索体验,提升用户的搜索满意度,这需要我们理解用户搜索意图,准确衡量搜索词与商户之间的相关程度,尽可能展示相关商户并将更相关的商户排序靠前。因此,搜索词与商户的相关性计算是点评搜索的重要环节。 大众点评搜索场景面临的相关性问题复杂多样,用户的搜索词比较多样,例如搜索商户名、菜品、地址、类目以及它们之间的各种复杂组合,同时商户也有多种类型的信息,包括商户名、地址信息、团单信息、菜品信息以及其他各种设施和标签信息等,导致Query与商户的匹配模式异常复杂,容易滋生出各种各样的相关性问题。具体来说,可以分为如下几种类型: 文本误匹配:在搜索时,为保证更多商户被检索和曝...
- 下一篇
Ubuntu 22.10 使用 GNOME Console 作为默认终端
5 月份,Canonical 桌面软件工程师 Jeremy Bicha 曾提议使用新的 GNOME Console 作为 Ubuntu 22.10 中的默认终端应,以取代 GNOME Terminal。目前此项变更提案尚未落实,不过在此之前,Ubuntu 22.10 的gnome-console 软件包已进行了一些必要的改进。 Bicha 在 5 月的提案指出,建议 Ubuntu 22.10 使用 GNOME Console 作为默认终端,这其实也是遵循 GNOME 上游的变化。而且GNOME Console 比GNOMETerminal 更精简,支持深色模式,支持原生透明度控制,提供对长时间运行的命令的通知,支持修改 root/sudo 终端的 UI 颜色,以及其他功能增强。GNOME Console 最近还被移植到了 GTK4。 但目前存在一个问题,GNOME Console 不支持在当前标签的工作目录中打开新标签。截至上周,Ubuntu 22.10 的 GNOME Console 软件包添加了一个补丁,用于解决此问题,以及通过让 x-terminal-emulator 指向 gn...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Hadoop3单机部署,实现最简伪集群
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Windows10,CentOS7,CentOS8安装Nodejs环境
- MySQL8.0.19开启GTID主从同步CentOS8