FnO GREL Functions
November 27, 2025 ยท View on GitHub
This library provides a standalone library for the GREL functions in JAVA. It also serves as a 'best-practice' example of how to implement your own FnO function implementation in JAVA.
Installation
Import as Maven dependency (Use JitPack):
<dependency>
<groupId>com.github.fnoio</groupId>
<artifactId>grel-functions-java</artifactId>
<version>v0.10.1</version>
</dependency>
Or build it yourself (you'll need Maven + JDK >= 17):
mvn install
Quick start
src/main/java/io/fno/grel contains code to actual functions.
Note how they currently are all public and static.
Their description is taken directly from GREL.
These implementations are mapped to FnO descriptions.
How these descriptions look like, you can find in src/main/resources/grel_java_mapping.ttl.
Using the fno:function predicate, they are linked to Function descriptions.
The function descriptions, you can find at http://users.ugent.be/~bjdmeest/function/grel.ttl#.
Testing
mvn test
Best practices
Use JAVA Classes, not primites
So Integer instead of int, etc.
The Function Handler for the moment only handles Classes, not primitives.