Releases: wenyan-lang/wenyan
v0.3.4
v0.3.3 - new npm org @wenyan
v0.3.2
Features
- Use modern js syntax for compiled code (PR #574, thanks @tsao-chi)
- Improved error handling (#566, 8bf7e0a)
Standard Library
Examples
Misc
- The Online IDE moved to https://ide.wy-lang.org and a separate repo
Thanks
Thanks for our first financial contributor @wenfeng0218 on Open Collective!
v0.3.1
v0.3.0
BREAKING CHANGE: compile
API change
As we mentioned in the v0.2.0 release, the support of using lang
as the first argument of compile
is now REMOVED. Please use the new API instead.
// before
compile('js', source, { ... })
// after
compile(source, { lang: 'js', ... })
New Online IDE
The fresh new Online IDE is now landed. With file explorer, rendering, a better editor, auto-complete, wyg support, dark mode and more. Please do check it out! (PR #515 #526 #535 #536 #537 #546 #551 #552)
We are now moved to Typescript!
We have rewritten our codebase to Typescript. The typing declaration file is also shipped in @wanyanlang/core.
Check out for #543 for more details.
Features
Fixes
- Functions containing elseif is miscompiled (PR #523, thanks @statementreply)
Stdlib
- New 格物 library (PR #553, thanks @Fros1er)
- Fix atan2(Infinity, Infinity) (PR #538 , thanks @statementreply)
Tests
- A lot of tests have been added (#527, #530, thanks @statementreply)
Examples
v0.2.4
import in, elseif, if true, if false, any
Thanks to everyone who contributed their ideas, a selection of proposed new syntaxes are now added
js/c++ | wenyan | issue |
---|---|---|
continue |
乃止是遍 |
#392 |
else if |
或若 |
#365 |
if (ans) { |
若其然者 |
#513 |
if (!ans) { |
若其不然者 |
ditto |
auto |
元 |
#486 |
require('path/to/something') |
吾嘗觀「「某樓」」中「「某閣」」中「「某書」」之書。 |
#475 |
refer to #519 for more details
v0.2.3
序.wy
Think 序.wy
the Wenyan version of index.js
.
For example, the reader now will search for a module 四庫全書
for a given path /tmp/examples
/tmp/examples/四庫全書.wy
/tmp/examples/四庫全書/序.wy
The first match will be imported. Refer to #512 for more details.
藏書樓
Think 藏書樓
the Wenyan version of node_modules
.
藏書樓
will be included as importPaths
by CLI automatically. It will do an up searching for 藏書樓
from the cwd (just as node did)
v0.2.2
New Website Domain http://wy-lang.org!
We are now using Netlify to build our website & IDE. The legacy links will redirect to http://wy-lang.org automatically.
- New spec page, check it out
Features
- New option
importPaths
for specifying the import searching directories, (PR #499, by @antfu) - New option
allowHttp
for allowing import scripts from the web (default tofalse
). refer to #499 for more details.
Fixes
- Fix for mismatched scope begin/end in typecheck (PR #496, thanks @statementreply)
- Stdlib: Fix for some 曆法 functions (PR #503, thanks @statementreply)
- Stdlib: Improve asin, acos and atan (PR #511, thanks @statementreply)
Examples
- New example Pascal Triangle (PR #498, thanks @MerakDipper)
v0.2.1
Static Type Inference
When the option is turned on, the compiler will now raise exceptions if your code does not typecheck. Also it is capable of producing type signatures for inspection, e.g. ./example/quicksort.wy produces the following:
[0-347] {
快排 : (('a) arr) -> (('a) arr)
己 : (num) arr
[33-285] {
首 : ('a) arr
頷 : ('a) arr
尾 : ('a) arr
甲一 : 'a
甲餘 : ('a) arr
乙 : ('a) arr
[136-201] {
丁 : 'a
}
}
}
For more detail, please refer to #486
Standard Library
- Fundamental Calendar library (PR #466, thanks @statementreply), check out Standard Library cheatsheet for more details.
3rd Party Compilers
Fixes
v0.2.0
⚠ BREAKING CHANGE: compile
API change
The first argument lang move to option, please switch to new API.
//before
compile('js', source, { ... })
// after
compile(source, { lang: 'js', ... })
The old API is still functional for temporary backward compatible, the support will be REMOVED in the next minor update.
Wenyan Snippets Site, #459
Please do check it out. Any feedbacks are welcome!
New Execute API
Check out API Document and #473
Fixes
- Fix compiler crash with 0-argument macros (PR #453, thanks @statementreply)
- stdlib: Improve sin, cos and tan (^/1/3) (PR #457, thanks @statementreply)
- bool2hanzi (PR #465, thanks @Fros1er)
Docs
- Auto generates examples for README.md (PR #448, thanks @cuixiping)