Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

支不支持用像lua这种脚本语言来表示数据 #8

Open
chengf2018 opened this issue Oct 25, 2023 · 1 comment
Open

支不支持用像lua这种脚本语言来表示数据 #8

chengf2018 opened this issue Oct 25, 2023 · 1 comment

Comments

@chengf2018
Copy link

HVML的格式不太适合阅读,如果能用更精简的格式,例如lua来表示,是否会更友好一些?

@VincentWei
Copy link
Contributor

VincentWei commented Oct 26, 2023

HVML 基于标记语言的写法,主要的考虑是为方便和 HTML、XML 等混合。如果使用传统过程式编程语言,很难做到这一点,也不适合实现 observe 等事件监听机制。当然,也可以基于 HVML 的思想来设计一个新的编程语言,但不使用标记语言的写法,这是可能的。

至于您提到的不太适合阅读的问题,主要原因有如下几点:

  1. 流行的编辑器缺少对 HVML 的语法高亮显示。
  2. 过多使用 $ 符号。
  3. 没有提供直接的算术或者逻辑运算表达式书写方式。

以上第一个方面,比较麻烦一点。但就第二点和第三点,我们预留了 () 来书写逻辑和算术表达式,而这个表达式可以在 HVML 的混合求值表达式中使用。比如:

   <test with (MATH.round(x) > MATH.round(y)) >
       ...
   </test>

在 () 包围的逻辑和算术表达式中,我们可以使用和 C、Python 等语言一样的表达式来完成逻辑和算术运算,且可避免使用 $ 符号来引用变量。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants