WAX Lang 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
WAX Lang 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
WAX Lang 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
WAX Lang 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
WAX Lang 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 MIT
开发语言 C/C++ 查看源码 »
操作系统 跨平台
软件类型 开源软件
所属分类 开发工具
开源组织
地区 不详
投 递 者 terenceyhj
适用人群 未知
收录时间 2021-04-21

软件简介

wax是一个小型的编程语言,可以转译成C, C++, Java, TypeScript, Python, c#, Swift, Lua和WebAssembly。

主要特性

  • 强静态类型
  • 内置支持数组、哈希表和结构体
  • 支持与 C 类似的宏
  • 语法简单
  • 不支持 OOP
  • ……

wax语法受WebAssembly Text Format(wat)启发,并且与C极为相似。

(func main (result int)
  (print "hello world!")
  (return 0)
)
;; sort array in-place for index range [lo,hi] inclusive
(func qksort_inplace (param A (arr float)) (param lo int) (param hi int)
	(if (>= lo hi) (then
		(return)
	))
	(let pivot float (get A lo))
	(let left  int lo)
	(let right int hi)
	(while (<= left right) (do
		(while (< (get A left) pivot) (do
			(set left (+ left 1))
		))
		(while (> (get A right) pivot) (do
			(set right (- right 1))
		))
		(if (<= left right) (then
			(let tmp float (get A left))
			(set A left (get A right))
			(set A right tmp)
			(set left  (+ left 1))
			(set right (- right 1))
		))
	))
	(call qksort_inplace A lo right)
	(call qksort_inplace A left hi)
)

(func qksort (param A (arr float))
	(if (! (# A)) (then
		(return)
	))
	(call qksort_inplace A 0 (- (# A) 1))
)

详情点此在线体验

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (11)

加载中
(func main (result string) (print "Why need `()`") (return "FXXK") )
04/28 18:23
回复
举报
这么多括号 会死人的........
04/28 17:35
回复
举报
该评论暂时无法显示,详情咨询 QQ 群:912889742
这确定不是lisp方言?
04/28 11:40
回复
举报
感觉这个WAX源码更像机器生成的
04/28 11:09
回复
举报
这种语法有人能忍?
04/28 10:58
回复
举报
??? 评论好使了么
04/28 10:45
回复
举报
打分: 很差
(((((((((()))))))))) 看出什么来了吗?
04/28 10:18
回复
举报
脑瓜子疼…
04/28 09:53
回复
举报
奇葩,oc就是个中括号的奇葩,这又来个小括号的奇葩
04/28 09:48
回复
举报
更多评论
暂无内容
2015/10/28 10:48

Alibaba增强开源项目Wax

Wax是什么? 还记得当年在iPhone上火爆无比的游戏《愤怒的小鸟》吗,它就是基于Wax框架编写的。Wax把Lua脚本语言与原生Objective-C底层runtime结合起来,使得你可以用Lua语言来开发iPhone应用。 为什么使用Wax? 使用Lua编写。Lua是一个简洁、轻量、可扩展的脚本语言,在大量的游戏中使用,它的体积小、速度快。Lua语法简单、学习速度快、开发效率高。 Wax是免费的、开源的。与其他一些基于Lua的移动开发解决方案不同,Wax是个开...

0
0
发表了博客
2019/03/19 22:41

org.apache.xerces.dom.ElementNSImpl.setUserData(Ljava/lang/String;Ljava/lang

HTTP Status 500 - Handler processing failed; nested exception is java.lang.AbstractMethodError: org.apache.xerces.dom.ElementNSImpl.setUserData(Ljava/lang/String;Ljava/lang/Object;Lorg/w3c/dom/UserDataHandler;)Ljava/lang/Object; type Exception report message Handler processing failed; nested exception is java.lang.AbstractMethodError: org.apache.xerces.dom.ElementNSImpl.setUserData(Ljava/lang/S...

0
0
发表于服务端专区
2016/12/05 14:31

Commons Lang

Commons Lang The standard Java libraries fail to provide enough methods for manipulation of its core classes. Apache Commons Lang provides these extra methods. Lang provides a host of helper utilities for the java.lang API, notably String manipulation methods, basic numerical methods, object reflection, concurrency, creation and serialization and System properties. Additionally it contains basi...

0
0
发表了博客
2016/12/16 14:54

common-lang

StringUtils:提供了各种关于字符串操作的工具类 [API地址](http://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/StringUtils.html)

0
0
发表于大前端专区
2016/09/09 16:51

lang属性

lang属性可指定标签范围内元素的语言种类。<html lang="en"> lang="en"——英语 lang="zh"——中文 lang="ja" ——日语 http://www.monmonkey.com/rumenpian/html/attr/lang.html

0
0
发表于软件架构专区
2016/11/06 15:39

apache-commons-lang

####This Lang API is an extension to the java.lang package. https://wiki.apache.org/commons/Lang ###Lang aims to provide: - Comprehensive String handling utilities - Enumerated types (pre JDK 1.5) - Nested exceptions (pre JDK 1.4) - Builders to create hashCode, equals, toString and compareTo methods - Utilities for Object, Date and Numbers 这里的工具类太多了,主要就是各个对象的基本操作. ###依赖...

0
1
发表了博客
2014/03/25 11:12

org.objectweb.asm.ClassVisitor.visit(IILjava/lang/

今天为java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang /String;[Ljava/lang/String;Ljava/lang/String;)V错误真花了我大量的时间去找这个问题,在网上也找到了 不少的解决的办法,但不知道为什么不能解决我的问题,也不知道是不是我用的工具的问题哟,不过综合找到的现在终于找到了,虽然花了不少的时间,但还是很高 兴,本来不想把这个问题写上来的,因为网上有太多的解决...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
11 评论
9 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部