官方今日宣布,,除了编译器之外,MojoSDK还包括一整套开发者和IDE工具,可以用于构建和迭代Mojo应用。
ModularAI表示,自5月2日推出Mojo编程语言以来,已有超过12万开发者注册使用MojoPlayground,超过1.9万开发者在Discord和GitHub上积极讨论Mojo。
Mojo现在可供本地下载,不过目前只有Linux系统版本,官方承诺会在即将发布的版本中添加macOS和Windows系统支持。
据介绍,Mojo是一种用于计算的高性能“Python++”编程语言,面向AI开发人员推出,随着时间的推移,它将发展成为Python的超集。
目前,Mojo已经支持与任意Python代码无缝集成,并具有可扩展的编程模型来针对性能关键型系统,包括人工智能中普遍存在的加速器(例如GPU)。
此外,IT之家在博客中注意到,Mojo号称将动态和静态语言的优点结合在一起,性能可达到目前Python的68,000倍,还提供与Python生态系统的完全互操作性,从而可以无缝使用Python库。
以下为使用Mojo计算欧几里得距离的代码:
$mojo
WelcometoMojo!
Expressionsaredelimitedbyablankline.
Type`:mojohelp`forfurtherassistance.
1>%%python
2.importnumpyasnp
3.n=10000000
4.anp=np.random.rand(n)
5.bnp=np.random.rand(n)
6>fromtensorimportTensor
7.letn:Int=10000000
8.vara=Tensor[DType.float64](n)
9.varb=Tensor[DType.float64](n)
10.foriinrange(n):
11.a[i]=anp[i].to_float64
12.b[i]=bnp[i].to_float64
13>frommathimportsqrt
14.defmojo_naive_dist(a:Tensor[DType.float64],b:Tensor[DType.float64])->Float64:
15.vars:Float64=0.0
16.n=a.num_elements
17.foriinrange(n):
18.dist=a[i]-b[i]
19.s+=dist*dist
20.returnsqrt(s)
23>fnmojo_fn_dist(a:Tensor[DType.float64],b:Tensor[DType.float64])->Float64:
24.vars:Float64=0.0
25.letn=a.num_elements
26.foriinrange(n):
27.letdist=a[i]-b[i]
28.s+=dist*dist
29.returnsqrt(s)
30.
31>letnaive_dist=mojo_naive_dist(a,b)
32.letfn_dist=mojo_fn_dist(a,b)
33.print(fn_dist)
34.
35.print(naive_dist)
此外,Mojo允许开发者构建静态编译的可执行文件,可以在没有任何依赖项的情况下进行部署,例如:
$mojobuildhello.
$./hello
HelloMojo!
9
6
3
$ls-lGtranhhello*
-rw-r–r–10817Sep323:59hello.
-rwxr-xr-x1022KSep323:59hello
Mojo还拥有VisualStudioMarketplace的官方扩展,支持语法高亮、语句诊断、格式化、补全建议等。
暂无评论内容