vitamin
1.0.0
維生素賦予您強大的力量,您需要它,而當您不這樣做時不會妨礙您。
注意:該語言目前是一種正在進行的工作,因此希望大多數事情不起作用!
通過一些示例程序了解維生素。
有關完整說明,請參閱語言參考手冊。
文檔和更多示例也會在維生素語言網站上反映。網站上的代碼摘錄更易於閱讀,因為它們具有語法凸台!
簡單的嘶嘶聲
fizzbuzz(i: Int) =
case
of i mod 15 == 0 'FizzBuzz'
of i mod 3 == 0 'Fizz'
of i mod 5 == 0 'Buzz'
of _ Str(i)
for i in range(100)
print(fizzbuzz(i))
類型安全大小的向量
# Vectors of length `n` and element type `a` are pointers to mutable values of type `a`
unique Vector(n: Size, a: Type) = Record(items: &mut a)
# Parameters `n`, `m` and `a` will be computed and passed implicitly
concat(x: Vector($n, $a), y: Vector($m, a)) =
items = new(mut, a, count=n + m)
copy(from=x.items, to=items, count=n)
copy(from=y.items, to=offset(items, n), count=m)
(items=items) as Vector(n + m, a)
# Assume these vectors are defined somewhere else
a : Vector(3, Int)
b : Vector(2, Int)
assert type-of(concat(a, b)) == Vector(5, Int)
需要NIM 1.4.2和靈活。
chmod +x build
# install dependencies
./build setup
# run tests (optional)
./build test
# compile for the current architecture
./build維生素二進制vita將出現在bin目錄中。
托多
默認情況下,維生素期望在~/.local/lib/vita或/usr/lib/vita中存在res/lib的內容。您還可以將其他庫路徑添加到VITAPATH環境變量(由結腸隔開的路徑: 。
# assuming `vita` is in PATH
# run a program
vita script.v
# run an interactive session
vitavim:基本語法支持
res/vitamin.vim到vim/neovim syntax目錄.vimrc : au BufRead,BufNewFile *.{v,vita} set filetype=vitaminVisual Studio代碼:基本語法支持
Vitamin擴展( ext install maxadamski.vitamin ) 隨時開放問題以提出問題或提出建議。
貢獻非常歡迎。