Introdução ao YueScript
YueScript é uma linguagem dinâmica que compila para Lua. É um dialeto do MoonScript. O código escrito em YueScript é expressivo e extremamente conciso. É adequado para escrever lógica de aplicação variável com código mais manutenível e roda em ambientes Lua embutidos, como jogos ou servidores web.
Yue (月) é o nome da lua em chinês e é pronunciado como [jyɛ].
Um gostinho de YueScript
Seção intitulada “Um gostinho de YueScript”-- sintaxe de importaçãoimport p, to_lua from "yue"
-- literais de objetoinventory = equipment: - "sword" - "shield" items: - name: "potion" count: 10 - name: "bread" count: 3
-- compreensão de listamap = (arr, action) -> [action item for item in *arr]
filter = (arr, cond) -> [item for item in *arr when cond item]
reduce = (arr, init, action): init -> init = action init, item for item in *arr
-- operador pipe[1, 2, 3] |> map (x) -> x * 2 |> filter (x) -> x > 4 |> reduce 0, (a, b) -> a + b |> print
-- manipulação de metatableapple = size: 15 <index>: color: 0x00ffff
with apple p .size, .color, .<index> if .<>?
-- sintaxe de exportação estilo jsexport 🌛 = "Script da Lua"-- sintaxe de importaçãoimport p, to_lua from "yue"
-- literais de objetoinventory = equipment: - "sword" - "shield" items: - name: "potion" count: 10 - name: "bread" count: 3
-- compreensão de listamap = (arr, action) -> [action item for item in *arr]
filter = (arr, cond) -> [item for item in *arr when cond item]
reduce = (arr, init, action): init -> init = action init, item for item in *arr
-- operador pipe[1, 2, 3] |> map (x) -> x * 2 |> filter (x) -> x > 4 |> reduce 0, (a, b) -> a + b |> print
-- manipulação de metatableapple = size: 15 <index>: color: 0x00ffff
with apple p .size, .color, .<index> if .<>?
-- sintaxe de exportação estilo jsexport 🌛 = "Script da Lua"Sobre o Dora SSR
Seção intitulada “Sobre o Dora SSR”O YueScript está sendo desenvolvido e mantido em conjunto com o motor de jogo open-source Dora SSR. Tem sido usado para criar ferramentas do motor, demonstrações de jogos e protótipos, validando suas capacidades em cenários do mundo real e aprimorando a experiência de desenvolvimento do Dora SSR.