Pnuts最初是由Toyokazu Tomatsu在1997年开发的,作为Java类的测试工具。此后,Pnuts得到了扩展,主要关注基于java的脚本引擎所需的基本功能,如模块系统和字节码编译器。
Pnuts的商业用途被罗克韦尔自动化的FactoryTalk开发系统,集成在FTPC中。
Pnuts是一种面向Java平台的动态脚本语言。它被设计成与Java编程语言一起在双语言系统中使用。Pnuts项目的目标是提供与Java语言紧密集成的小型、快速脚本语言。Pnuts使用了对Java开发人员简单和友好的语法,同时也非常有表现力。
因为Java和Pnuts共享相同的类型系统,所以Java代码可以轻松地调用或定义Pnuts函数。同样,Pnuts代码可以轻松地操作Java对象。Pnuts代码甚至可以定义Java类。因为Pnuts编译成Java字节码,所以Java可以像使用其他类一样使用这些类。用Pnuts编写的类甚至可以在以后被用Java编写的类替换,而不需要修改其他代码。
基于表达式
Pnuts 脚本语言是基于表达式的,脚本在运行时由脚本解释器进行交互评估。脚本环境按顺序计算表达式,然后将最后一个结果传递给Java环境。
原始数据
原始数据被自动转换为对象。例如,如果您声明了一个变量a=1,那么它将被转换为对象java.lang. integera =1。算术运算使用包装器对象进行计算。
函数
脚本可以包含可以接受任意数量参数的函数,并通过它们的名称和参数数量进行标识。可以把一个函数赋值给一个变量。参数和结果按原样传递,Java对象包装的基本类型值除外。
Pnuts Maven地址
<!-- https://mvnrepository.com/artifact/pnuts/pnuts -->
<dependency>
<groupId>pnuts</groupId>
<artifactId>pnuts</artifactId>
<version>1.2</version>
</dependency>
Pnuts源码
Pnuts源码目前只在gitHub上找到一个备份。