与Ada,C / C ++和Java相比, Seed7 编程语言更强大,更通用,因为它的开发人员在项目的网站上对其进行了描述。它能够将程序转换为C应用程序,然后将其编译为机器代码。使用Seed7,具有类型参数和类型结果的函数比泛型概念或模板更加优雅。
功能一目了然
主要功能包括用户定义的运算符和语句,支持面向对象(多个调度和接口),支持调试源代码,强类型支持,异常处理支持,重载过程,语句,运算符和函数,以及支持各种预定义类型,例如可调整大小的数组,位集,散列,结构,时间,颜色,持续时间等。
此外,Seed7支持数字的bigRational和bigInteger类型,允许用户在不使用特殊语法的情况下轻松定义泛型和模板,并且它带有预定义的构造,例如for循环和数组。另一个有趣的特性是该软件允许开发人员创建可从一开始就可移植的程序,而无需修改源代码。
自动内存管理
Seed7还具有自动内存管理功能,无需使用垃圾收集器即可开箱即用。此外,由于缺少自动转换和静态类型检查,该软件可帮助开发人员在编译程序时轻松发现错误。
支持的操作系统,许可证和可用性
Seed7可在任何GNU / Linux操作系统以及各种UNIX和Microsoft Windows操作系统下运行。很高兴知道虽然运行时库是根据LGPL许可证分发的,但解释器和示例程序可以通过GPL许可证下载。
什么是新的这个版本:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2016-04-30版本中的
新功能:
Seed7新功能2014-01-19(2014年1月20日)
2016-03-30版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2016-02-29版本中的
新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2016-01-30版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2015-11-29版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2015-09-14版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2015-07-05版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2015-06-01版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2015-05-03版本中的新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2015-02-16版本中的
新功能:
- 描述外部功能界面的手册章节已得到改进。
- 控制台中的Unicode处理已得到改进。
- 现在检查传递给C函数的所有字符串。
- 改进了几个运行时函数的性能。
- 新的灵活转换功能已添加到bytedata.s7c。
- 已在多个文件中添加或改进了文档注释。
- 程序chk_all.sd7已经过改进,可以检查几个编译器选项。
- 编译器已经过改进,可以进行更多优化。
- 检查已添加到chkbig.sd7,chkexc.sd7和chkflt.sd7。
2014-01-19版本中的新功能:
- 已添加具有Triple DES密码支持的库tdes.s7i。
- 库tls.s7i已经过改进,可以接受CertificateRequest消息。
- 检查mdiv和mod已添加到chkbig.sd7。
- 编译器已经过改进,可以对if语句,动作BIG_MOD(运算符mod)和BIG_MDIV(运算符mdiv)进行更多优化。
- 各种图书馆都引入了打开文件的新功能。
- 仍支持旧功能,但不推荐使用旧功能。
- 已在各种文件中添加或改进了文档注释。
- 已添加布尔值的函数getValue。
2014-01-05版本中的新功能:
- 已添加具有DES(数据加密标准)密码支持的库des.s7i。
- bin32.s7i中添加了几个函数和写入值支持。
- 添加了新库unicode.s7i,其中包含在Unicode编码之间进行转换的功能。
- 库gethttps.s7i已得到改进,可接受HTTP链接。
- chkbig.sd7已添加了几项检查。
- 编译器已经过改进,可以对bigInteger函数进行更多优化。
- 检查关键字'restrict'已添加到chkccomp.c。
- UTF-8转换功能的性能提高了6%。
2013-12-22版本中的新功能:
- bas7.sd7中写入的连续调用已合并为write writevern的单个调用。
- 常见问题解答中添加了几个链接。
- 类型cardSuit和cardRank以及函数cardPixmap和cardBackside已添加到库cards.s7i。
- 库cards.s7i已经过改进,可以使用pic_util.s7i中的函数。
- 程序carddemo.sd7已经过改进,可以使用cards.s7i中的新类型和功能。
2013-12-08版本中的新功能:
- 有关Seed7与Java的比较以及初始化数据的优雅方式的说明已添加到常见问题解答中。
- 已将几个函数从shell.s7i移至新库process.s7i。
- 函数commandPath已添加到process.s7i。
- 作为对Windows失败的更正,程序chk_all.sd7已得到改进以捕获异常。
- 在pic16.s7i和pic32.s7i中添加或改进了几张图片。
- cmd_win.c中的cmdPipe2函数已经改进,可以在文本模式下打开stdin和stdout。
- 函数filInputReady已经改进,挂机后返回TRUE。
2013-11-24版
新内容:
- 已添加具有图片实用程序功能的库pic_util.s7i。
- 图片cancel_pic,folder_pic和reset_pic已添加到pic16.s7i和pic32.s7i。
- 将pixmap图像转换为BMP格式的函数和函数getPixelColor已添加到draw.s7i。
- 无参数的功能清除的所有用法都已用clear(黑色)替换。
- str_rtl.c中函数strCLit的性能提高了10倍。
- s7c.sd7中的函数init_bstri_constants和init_win_constants已得到改进。
- 修复了多个文件中的拼写错误。
2013-11-10版本中的新功能:
- 编译器和运行时库已经过改进,可用于Sparc
- OpenBSD下的64位计算机。谢谢Brian Callahan,
- 他的支持和访问他的Sparc 64位计算机。
- 有关便携性的常见问题解答已得到改进。
- 添加了新库cc_conf.s7i。该库管理
- C编译器和运行时的配置值。
- 编译器已经过改进,可以使用库cc_conf.s7i。
- 有关version.h中使用的定义的章节已得到改进
- in src / read_me.txt。
- 类型rtlGenerictype已在 中重命名为generictype
- 运行时库的文件。现在编译器和运行时库
- 都使用名称generictype。
- 函数checkForLimitedStringLiteralLength,检查
- 三字符序列并检查是否存在getrlimit()
- 和siglongjmp()已添加到chkccomp.c。
- 函数setupStack已添加到cmd_rtl.c中。这个功能
- 尝试将堆栈限制提高到STACK_SIZE。
- USE_SIGSETJMP的用法已重命名为HAS_SIGSETJMP。
- 表key_code在kbd_inf.c和kbd_poll.c中得到了改进。
- 现在终端接口(VERASE)的擦除字符始终为
- 作为退格键返回(KEY_BS分别为'8')。这提高了
- Cygwin下的行为。
- 功能utf8_init已在kbd_inf.c和 中更改
- kbd_poll.c在没有语言环境时采用UTF-8模式
- 变量已设置。
- msgdigest.s7i中的msgDigest函数已更改为使用
- 在参数。
- 函数configValue已从osfiles.s7i移至
- cc_conf.s7i。
- 宏REALLOC_STRI_SIZE_SMALLER已添加到heaputl.h。
- 运行时库中REALLOC_STRI_SIZE_OK的几个用法
- 已更改为REALLOC_STRI_SIZE_SMALLER。 的用法
- 编译器已经过改进,初始化了boolean和
- 值为value.boolvalue 的结构的枚举元素
- 分别为value.enumvalue。这是正常工作所必需的
- on big-endian systems。
- 已改进解释器和编译器以支持操作
- ACT_EQ和ACT_NE。
2013-10-27版本中的新功能:
- 已对编译器和运行时库进行了改进,以支持big-endian系统。
- src / read_me.txt中的文档已得到改进。
- 当远程端关闭套接字时,库tls.s7i已得到改进,以避免引发异常。
- 已在多个源文件中添加或改进了文档注释。
- 已优化了多项功能。
- 函数typNum已经过改进,可以使用哈希表。
- 函数typ_num和typ_str已经改进,分别调用typNum typStr。
- 支持ACT_ICONV和ACT_ORD的操作已添加到解释器和编译器中。
2013-10-13版本中的新功能:
- 已添加用于TLS / SSL和HTTPS支持的库。
- <比较运算符(适当的子集)和> (适当的超集)已被添加到hashsetof.s7i。
- 类型digestAlgorithm及其函数已添加到msgdigest.s7i。
- 函数hex已添加到bytedata.s7i。
- 示例程序castle.sd7已得到改进。
- 文档注释已添加到多个文件中。
- msgdigest.s7i的消息摘要功能中的填充已更正。
- 改进了gethttp.s7i中的函数getHttp,以便对HTTP头字段名称使用不区分大小写的比较。
2013-09-29版本中的新功能:
- 函数bStriLe,bytesLe,bStriBe和bytesBe已添加到bytedata.s7i。这些函数将整数转换为字节序列。
- 编译器已经过改进,可以为STR_PUSH操作生成内联代码。
- 此操作会在字符串中附加一个字符(由运算符&:=使用)。
- 转换功能已添加到time.s7i。
- 检查chkbig.sd7,chkint.sd7和chkstr.sd7中是否添加了多个运算符和函数。
- 函数doLocalDeclsOfStatement已添加到编译器中。此函数用于简化各种语句的处理。
2013-09-08版本中的新功能:
- 添加了makefile mk_freebsd.mk以支持freeBSD下的编译。
- bytedata.s7i已添加了在字节序列和bigInteger数字之间进行转换的函数。
- 函数bytesLeAsInt和bytesBeAsInt已重命名为bytesLe2Int和bytesBe2Int。
- 检查已添加到chkbig.sd7和chkset.sd7。
- 改进了big_rtl.c中的bigRand函数,以避免随机数超出所需范围的情况。
- 参数名称已添加到多个文件中。
- 编译器已经过改进,在初始化字符时使用charvalue而不是intvalue。
2013-08-20版本中的新功能:
- sha1.s7i库已重命名为msgdigest.s7i。
- 消息摘要和安全散列函数md4,md5,sha224和sha256已添加到msgdigest.s7i。
- 添加了一个新的propertyfile.s7i库,它定义了将属性文件读入哈希表的函数。
- 随机数发生器的性能得到了改善。
- 在bytedata.s7i库中添加了bytesLeAsInt函数。
- 在bytedata.s7i中,int64AsBytesBytesLe函数被重命名为int64AsEightBytesLe。
- skipWhiteSpace函数的一个变体已添加到scanfile.s7i库。
2013-07-22版本中的新功能:
- 修复了chlog.txt,faq.htm和faq.txt中的拼写错误。
- 函数conText(在con_win.c中)已得到改进,可以在长字符串中正常工作(当WriteConsoleW失败时)。
- 已将几个函数从drw_win.c移至新文件gkb_win.c。
- inIntRange的错误用法已被drw_win.c中更好的代码替换。
- 在con_win.c中,表map_key已得到改进,以便kbdGetc识别密钥F12。
- 程序chk_all.sd7已经改进,可以调用chkhsh.sd7。
- 编译器已经过改进,可以使用正确的原型生成比较函数。
2013-06-16版本中的新功能:
- 已在多个文件中添加或改进了文档注释。
- string.s7i和char.s7i中的lower和upper函数已经过改进,使用默认的Unicode case映射。
- 放气压缩的性能提高了5到10倍。
- 功能str_cmp,str_range,str_substr,strCompare,strRangeSlice,strRange,strSubstrSlice和strSubstr的性能得到了改进。
- chkstr.sd7中添加了几个字符串函数的测试。
- 编译器已改进为STR_HASHCODE,STR_RANGE和STR_SUBSTR操作的内联代码。
评论没有发现