Basis:一种新编程语言轮子,类似 Python / C++ / Go / ... 的混合,请大家拍砖,多谢多谢

2019-06-14 19:22:13 +08:00
 withablink

请看 PDF 草稿:

https://github.com/BlinkDL/Basis/blob/master/docs/basislang.pdf

强类型,静态类型。但可省略类型,由编译器自动推断静态类型。

请看 Basis 代码示例:

import sys.console as console  	

isPrime(n) :						
    n <= 1 : return 'bad'               
    for i = 2, i * i <= n, i++
        n % i == 0 : return 'bad'
    return 'good'

main : 										
    console.writeLine(isPrime(17))

Basis 中的冒号尤为灵活。上述程序,没有 if 语句,但仍然容易理解。

如果您有知乎账号,也欢迎在知乎讨论: https://zhuanlan.zhihu.com/p/68906047

3098 次点击
所在节点    程序员
21 条回复
withablink
2019-06-16 15:51:12 +08:00
@thautwarm 您好,谢谢:

1. 希望和 C++ 比较像,例如 [继承 /多态 /泛型 /模板] 都是 C++ 的层次。另外希望支持 [RESULT_TYPE, ERR_TYPE] 这种 union type。

2. 多范式,不过还是以过程和对象为主,不像函数式语言那样可变(所以扩展性也不会特别强)。不过,考虑为 [异步 /多线程 /分布式] 做一些特殊的范式。

3. 最初步的目标是 [可以混合 C++ 和 Python 的写法,但也拥有 C++ 的速度] ,这可能也是很多人的愿望。

最初的领域,是机器学习,因为这个对效率(算力&内存)有要求,但常用的 Python 实在效率太低了,容易成为瓶颈,无法令人满意。

4. 这是很重要也很费劲的一个事情,希望做好 。如果发现有特性会在此明显地拖后腿,那么会不加这个特性。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/574057

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX