亚祖是一个命令行,解释的脚本语言,它提供了一个现成的环境,为C或C ++函数 用户可以通过引用它们的亚祖的自己的源代码,然后重新编译嵌入自己的程序进入语言亚祖。当亚祖运行时,它会弹出一个命令提示符下,用户可以定义和操作变量,数组,脚本功能,读取和写入文件等 - 而且,他打电话嵌入式功能。由于只有在标准C库使用,亚祖应该在几乎任何平台上。
亚祖脚本是一个最低限度的事情:类,集合,函数,函数参数等都是同样的事情。该方案的简单性简化了学习曲线。但它也买了的语言有很多共性的 - 亚祖允许这是罕见的脚本语言许多异国情调的编程结构,但已被证明突出的,在笔者的手非常有用。
亚祖下载包括:C / C ++源文件;一个Makefile文件;必要“.zoo”脚本;和文档
什么是此版本中的新:
- 在错误修正:
- 在确定代理成员,同时调整数组的问题;例如proxy_array [+1] @ :: {}
- 在“回归Q'现在工作时,'Q'是无效
- 在一个问题,即大的无符号整数将打印为“0”
- 在去()会陷入数组元素中
- 在read_string()(和ReadTable())无法读取的指数与加号(如1E + 1)
- 在问题读取和写入接近双精度下溢限号
- 在与ReadTable(有问题)试图调整列表时
- 使用ReadTable()时的二维表只有一个单一的元素 存在的问题
- 在使用SaveTable()与空表的问题
- 副本()崩溃时,第一个参数是原始的,第二个参数是复合
- 在与去()一个问题,蹑手蹑脚引入了#操作时
- 在偶尔崩溃时start.zoo尝试标志错误
- 在一些编译器警告消息(extrnl.c)
- 在SaveTable()现在一定会去别名表,如果这就是所谓的不正当
- 在SaveTable(错误)时,通过了一项非复合'表'
- 标记在错误的位置错误
- 在一个笨拙国旗的错误时,计算器试图打印自引用对象
- 改进:
- 在删除了“这一点。”前缀定义变量时。这将导致在定义具有相同名称的变量为全局变量的程序问题!
- a = @b现在工作时,b为无效。这意味着,“陷阱(x)的”不再检测无效成员的方式;使用“如果x == @nothing'代替。
- 添加一个“溢出”运行时警告代码
- 在加入猫()来user.zoo
- 添加保存(),它会尝试所有目录路径(这是类似于负载())
- 在SaveTable()现在会尝试所有目录路径
- 在加LS(),它打印出的变量在当前目录
- 添加compile_and_do_in()来user.zoo
- 在加圆(),它的工作原理,以最接近的整数
- 在加快表的调整使用ReadTable()
什么在1.4版本的新:
- 在错误修正:
- 在改善的run()的文件名大小写敏感的处理时run.CleanUp设置
- 要真正
- 在退出或user.zoo返回时不正确的错误消息
- 在涉及调整表中ReadTable错误()
- 从ReadTable错误消息的问题()
- 改进:
- 添加#运营商更换RunCode(),RunConstructor()
- 添加“;”作为“代码” 的替代符号
- 在计算器默认“开”到
- 添加小写()/大写()函数来user.zoo
- 添加错误代码ReadTable()
什么在1.3.1版本新:
- 系统修复,以一个长期的错误,有时使用去的时候崩溃的程序()。
- 运行(的新的自动清理功能),在过去的帖子还介绍,已经有unreproducible问题,有可能是这个bug修复需要照顾这一点。
- 在两个方面的改进大大提高了计算器:1)其使用冲刺(),而不是打印(),2)引进的“答”的变量,如人们常常发现在科学编程环境 的。
什么是新的版本1.3.0.1:
- Fixed的错误。
什么版本1.3是新的:
- 在错误修正:
- 在start.zoo年底忽略空字符的潜在致命的问题或其他脚本启动
- 在load()和保存()采用不慎ASCII模式而不是二进制,造成在个人电脑上的问题
- 在两个内存泄漏和1引用错误(潜在的第三个纪念品。泄漏)
- 在计算器没有在以前的版本工作
- 在多个漏洞[^ ..],[+ ..] + [..] =!或函数调用的定义/画上等号,在/ etc下的左侧。操作
- 问题所在[+ ..] / + [..]运营商将追加到隐藏成员
- 在涉及尺寸0代理阵列崩溃
- 在问题瓦特/计算器打印寄存器(由早期钙,掩盖问题,但这个问题在以前的版本一样)
- 在造成大的数组缓慢调整大小问题
- 拆解()印在64位机器的错误变量名
- 在调整()现在允许一个空白最后一个参数
- 当用户键入&QUOT尴尬拆卸错误;返回my_array [A,B] QUOT;从命令提示符
- 在返回一个阵列的多个指标后,命令提示符崩溃
- 在一个问题上线开始萎靡不振错误| ** |风格注释
- 拆解()坠毁时给定的零脚本
- 改进:
- 亚祖配置,以便它可以嵌入/由C代码调用;还从内部亚祖运行递归
- 后,重新运行一个脚本,运行()首先删除其定义的最后一次的成员:没有更多的陷阱(删除..)需要
- 添加走()/密码更改/查看命令提示符的工作空间变
- 在添加引用比较符:“== @”和“/ = @”
- 加入了代理运营商定义:“#::”
- 在做负载()更快,更多的内存效率
- 在打印字符串' D N'作为行结束了一个
- 运行()可以返回一个脚本的return语句的结果
- 在加总和(),是指()函数来user.zoo
- 在添加字符(),C_STRING()函数来user.zoo
- 在变换()现在允许用户定制的转换代码的搜索路径
- 在掷()可以定制抛出错误的位置和投掷警告以及
- 运行()将允许脚本警告出现在命令行(假设没有干预陷阱()的警告后)
- 拆解()可以跳过的字节码编译表达式
- 在更换RunHobbish()有更多的功能do_in()函数中user.zoo
- 添加RunCode()在user.zoo; RunConstructor()现在是该例程 的一种特殊情况
- 在持续读取的字节码作为slongs
- 现在,正确使用NULL指针,而不是0的C代码
- 在提高一些错误消息
- 在杂项:
- 在改变字节码字阵列插入运算符([+ ..] + [..]),并删除
- 从user.zoo消除CheckType() - "陷阱(A = @b)"通常是更好
- 在消除存在的()从user.zoo - "存在(" A")"主要是多余的"陷阱(一)"
涉及
什么版本1.2是新的:
- 在1.2版本亚祖才刚刚交付早产许多在64位机器致命错误后,上周曝光。亚祖是一个命令行解释脚本语言,这对用户的目的是通过嵌入自己的C或C ++程序到语言来定制。亚祖剧本的新颖之处的方式,其保守的外观背后的语法规则可以推断,产生许多稀有的和有用的脚本结构,它的作者并没有在其他语言中遇到的。
- 在目前的版本中真正重要的变化是取消有关整数大小导致立即死机的假设。因此有必要另显著调整:R_ulong已经从签名到签寄存器,所以改名为R_slong。重命名原则上可以引起向后兼容性问题,但幸运的是整数寄存器很少需要显式调用。最后,关于一些无趣的大多数用户,但耗时的作者,C / C ++源文件都发生了风格装修:评论,他们的格式进行了改进,他们已经(终于)
- 因为这个红脸作者炒了一下后当前版本中,它可能是64位的错误潜伏尚未在代码中。如果是这样的话,那么另外一个,修正版本很可能会成为即将于极少数几天,因为笔者使用他的计划如饥似渴。
什么在1.1版本的新:
- 在错误修正:
- 在与内联常量几乎任何脚本错误国旗的错误信息
- 在追加码操作“:”没有正确在某些情况下,如工作代码替代运营商在
- 在强制划上等号并没有在当多个指标进行明确给出正确的顺序复制数组元素(例如:[*] =!... ... = B [1,2])
- 在数值的问题在双精度分辨率边缘打印数字时
- 在下面ENDIF,ENDF或不正确ENDW,标记错误信息
- 在成员未找到错误的文件由user.zoo运行错误的成员名称
- 在随机()返回的第一个数字是不是完全随机
- 副本()没有检查自我引用
- 在SaveTable()中的错误时,表中的第二维度被尺寸设置成零
- 的sort()的长度0列表扔了不必要的错误
- 在空评论误读“| *** |”与奇数'*的
- 改进:
- 在新的{}定义的搜索路径现在总是通过定义它的脚本,不一定是封闭的脚本***
- 在添加调整大小()来user.zoo
- 在加分(),MAX()函数来user.zoo
- 在排序()现在排序列表,以及表
- 在新的()接受的类型和数据 不同的源变量
- 副本()返回错误代码
- 在更好的论据检查SaveTable()
评论没有发现