文件大小:
软件介绍
简介:
nim是一种静态类型编译的系统编程语言。它结合了其他成熟语言的成功概念。(如python、ada和modula)
nim language安装方法:
使用提供的zip文件的安装应该相当简单。 只需将文件解压到所需的安装目录,然后运行finish.exe,跟随指引一步步配置即可。
配置path环境变量
要使用nim进行开发,需要在你的path环境变量中添加以下两个目录:
nim的二进制文件位于你解压的文件夹下的bin目录下,所以这个目录在环境变量中是必需的;
%userprofile%\.nimble\bin (%userprofile%指的是你的home目录,win7以下是我的文档,也可能叫做administrator之类的用户名)
下载的zip文件中包含了一个名为finish.exe的文件,它会尝试在你的path中添加上面说的第一个目录,此工具还会自动检查你的系统中是否存在c编译器,你可以通过它安装mingw(一个windows的gnu c编译器集合)。
语言特点:
1、高效
支持各种后端:可以被编译为c、c++或javascript,所以nim可以满足所有前后端的需求。
nim生成原生且无依赖的可执行文件,不依赖于虚拟机,
所以它们小巧,便于分发。
nim编译器和生成的可执行文件,对目前的任何主流平台都提供了支持,
零开销迭代器和用户自定义方法的编译期求值等现代概念,
结合优先使用分配在栈上的值类型数据,生成高性能代码。
包括windows、linux、bsd和macos。
支持实时系统的快速延迟引用计数内存管理。
2、凝练
nim实现了自包含:编译器和标准库都是用nim本身来实现的。
nim拥有强大的宏系统,允许直接操纵ast,提供无限的可能性。
3、优雅
具有局部类型推断、元组、泛型和sum类型的现代类型系统。
语句按缩进分组,也可以跨行。
不需要宏去改变nim的语法
—— nim语法本身已经足够灵活。
使用方法:
我们从一个调整过的"hello world"程序开始:
# 这是注释
echo "what's your name? "
var name: string = readline(stdin)
echo "hi, ", name, "!"
保存到文件"greetings.nim",编译运行:
nim compile --run greetings.nim
用 --run switch nim在编译之后自动执行文件。你可以在文件名后给程序追加命令行参数nim compile --run greetings.nim arg1 arg2
经常使用的命令和开关有缩写,所以你可以用:
nim c -r greetings.nim
编译发布版使用:
nim c -d:release greetings.nim
nim编译器默认生成大量运行时检查,旨在方便调试。用 -d:release 关闭一些检查并且打开优化。 (译者注,-d:release的功能在最近的版本已经发生变化,现在会打开所有运行时检查,使用 -d:danger来替代,以生成更好性能的代码)
尽管程序的作用很明显,但我会解释下语法:没有缩进的语句会在程序开始时执行。缩进是nim语句进行分组的方式。缩进仅允许空格,不允许制表符。
字符串字面值用双引号括起来。 var 语句声明一个新的名为 name,类型为 string,值为 readline 方法返回值的变量名。 因为编译器知道 readline 返回一个字符串,你可以省略声明中的类型(这叫作 局部类型推导 )。所以这样也可以:
var name = readline(stdin)
请注意,这基本上是nim中存在的唯一类型推导形式:它是简洁性和可读性之间的折衷。
"hello world"程序包括一些编译器已知的标识符:echo,readline 等。这些内置声名在 system 模块中,它通过其它模块隐式的导出。
更新内容:
1、修复了“错误的 unicode 字符串输出”问题
2、修复了将元组作为静态参数传递给宏的问题
3、修复了即使在套接字关闭后仍会停止的异步 io 操作
4、报告关于 streams.openfilestream 的更多信息错误消息
5、对于空容器的 indexerror 的更好的错误消息
版权声明:
1 本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!
2 本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。
3 若有关在线投稿、无法下载等问题,请与本站客服人员联系。
4 如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系QQ:2499894784
点击加载更多评论>>