Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wa-lang
wa
提交
68dcfa83
wa
项目概览
wa-lang
/
wa
12 个月 前同步成功
通知
68
Star
655
Fork
45
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
wa
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
68dcfa83
编写于
7月 23, 2022
作者:
chai2010
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
internal/waroot: 添加标准库和例子模板
上级
6f7cf87b
变更
12
显示空白变更内容
内联
并排
Showing
12 changed file
with
178 addition
and
0 deletion
+178
-0
internal/waroot/_example_template/LICENSE
internal/waroot/_example_template/LICENSE
+1
-0
internal/waroot/_example_template/README.md
internal/waroot/_example_template/README.md
+14
-0
internal/waroot/_example_template/src/main.wa
internal/waroot/_example_template/src/main.wa
+45
-0
internal/waroot/_example_template/src/mymath/math.wa
internal/waroot/_example_template/src/mymath/math.wa
+16
-0
internal/waroot/_example_template/src/mypkg/pkg.wa
internal/waroot/_example_template/src/mypkg/pkg.wa
+8
-0
internal/waroot/_example_template/vendor/3rdparty/pkg/pkg.wa
internal/waroot/_example_template/vendor/3rdparty/pkg/pkg.wa
+7
-0
internal/waroot/_example_template/wa.mod.json
internal/waroot/_example_template/wa.mod.json
+14
-0
internal/waroot/_waroot/src/fmt/print.wa
internal/waroot/_waroot/src/fmt/print.wa
+7
-0
internal/waroot/_waroot/src/runtime/runtime.wa
internal/waroot/_waroot/src/runtime/runtime.wa
+3
-0
internal/waroot/_waroot/src/syscall/syscall.wa
internal/waroot/_waroot/src/syscall/syscall.wa
+6
-0
internal/waroot/example.go
internal/waroot/example.go
+19
-0
internal/waroot/waroot.go
internal/waroot/waroot.go
+38
-0
未找到文件。
internal/waroot/_example_template/LICENSE
0 → 100644
浏览文件 @
68dcfa83
版权 @{{.Year}} {{.Name}} 作者。保留所有权利。
internal/waroot/_example_template/README.md
0 → 100644
浏览文件 @
68dcfa83
# Pkg: {{.Name}}
欢迎使用 Wa 语言!
```
+---+ +---+
| o | | o |
| +----+ |
| |
| \/\/ |
| |
+------------+
```
internal/waroot/_example_template/src/main.wa
0 → 100644
浏览文件 @
68dcfa83
//
版权
@{{.
Year
}}
{{.
Name
}}
作者。保留所有权利。
//
例子
:
命令行程序
package
main
import
(
"fmt"
"3rdparty/pkg"
"myapp/mymath"
"myapp/mypkg"
)
fn
main
()
{
fmt
.
Println
(
42
)
pkg
.
Println
(
42
+
1
)
mypkg
.
Println
(
sum
(
100
))
mymath
.
PrintPrime
(
30
)
heart
()
}
fn
sum
(
n
int
)
int
{
let
v
int
for
i
:
=
1
;
i
<=
n
;
i
++
{
v
+=
i
}
return
v
}
fn
heart
()
{
a
:=
0.0
for
y
:=
1.5
;
y
>
-
1.5
;
y
=
y
-
0.1
{
for
x
:=
-
1.5
;
x
<
1.5
;
x
=
x
+
0.05
{
a
=
x
*
x
+
y
*
y
-
1.0
if
a
*
a
*
a
<
x
*
x
*
y
*
y
*
y
{
print
(
"@"
)
}
else
{
print
(
" "
)
}
}
println
()
}
}
internal/waroot/_example_template/src/mymath/math.wa
0 → 100644
浏览文件 @
68dcfa83
// 版权 @{{.Year}} {{.Name}} 作者。保留所有权利。
// 打印素数
fn PrintPrime(max int) {
for n := 2; n <= max; n = n + 1 {
isPrime := 1
for i := 2; i*i <= n; i = i + 1 {
if x := n % i; x == 0 {
isPrime = 0
}
}
if isPrime != 0 {
println(n)
}
}
}
internal/waroot/_example_template/src/mypkg/pkg.wa
0 → 100644
浏览文件 @
68dcfa83
//
版权
@{{.
Year
}}
{{.
Name
}}
作者。保留所有权利。
package
mypkg
//
打印整数
fn
Println
(
x
int
)
{
println
(
x
)
}
internal/waroot/_example_template/vendor/3rdparty/pkg/pkg.wa
0 → 100644
浏览文件 @
68dcfa83
//
版权
@{{.
Year
}}
{{.
Name
}}
作者。保留所有权利。
package
pkg
fn
Println
(
x
int
)
{
println
(
x
)
}
internal/waroot/_example_template/wa.mod.json
0 → 100644
浏览文件 @
68dcfa83
{
"name"
:
"{{.Name}}"
,
"pkgpath"
:
"{{.Pkgpath}}"
,
"version"
:
"0.0.1"
,
"authors"
:
[
"author"
,
"author2"
],
"description"
:
"module description"
,
"readme"
:
"README.md"
,
"homepage"
:
""
,
"repository"
:
""
,
"license"
:
""
,
"license_file"
:
"LICENSE"
,
"keywords"
:
[],
"categories"
:
[]
}
internal/waroot/_waroot/src/fmt/print.wa
0 → 100644
浏览文件 @
68dcfa83
//
版权
@
2019
凹语言
作者。保留所有权利。
package
fmt
fn
Println
(
x
int
)
{
println
(
x
)
}
internal/waroot/_waroot/src/runtime/runtime.wa
0 → 100644
浏览文件 @
68dcfa83
//
版权
@
2019
凹语言
作者。保留所有权利。
package
runtime
internal/waroot/_waroot/src/syscall/syscall.wa
0 → 100644
浏览文件 @
68dcfa83
//
版权
@
2019
凹语言
作者。保留所有权利。
package
syscall
//
wa
:
linkname
write
fn
Write
(
int32
fs
,
uintptr
data
,
int
size
)
int
internal/waroot/example.go
0 → 100644
浏览文件 @
68dcfa83
// 版权 @2021 凹语言 作者。保留所有权利。
package
waroot
import
(
"embed"
"io/fs"
)
//go:embed _example_template
var
_exampleAppFS
embed
.
FS
func
GetExampleAppFS
()
fs
.
FS
{
fs
,
err
:=
fs
.
Sub
(
_exampleAppFS
,
"_example_template"
)
if
err
!=
nil
{
panic
(
err
)
}
return
fs
}
internal/waroot/waroot.go
0 → 100644
浏览文件 @
68dcfa83
// 版权 @2021 凹语言 作者。保留所有权利。
package
waroot
import
(
"embed"
"io/fs"
"strings"
)
//go:embed _waroot
var
_warootFS
embed
.
FS
func
GetFS
()
fs
.
FS
{
fs
,
err
:=
fs
.
Sub
(
_warootFS
,
"_waroot"
)
if
err
!=
nil
{
panic
(
err
)
}
return
fs
}
func
IsStdPkg
(
pkgpath
string
)
bool
{
for
_
,
s
:=
range
stdPkgs
{
if
s
==
pkgpath
{
return
true
}
if
strings
.
HasPrefix
(
pkgpath
,
s
+
"/"
)
{
return
true
}
}
return
false
}
var
stdPkgs
=
[]
string
{
"fmt"
,
"runtime"
,
"syscall"
,
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录