Fahrenheit comes with several built-in extensions that provide additional capabilities. All built-in extensions are automatically discovered and loaded at startup if they are on the classpath.
Provides advanced mathematical operations (trigonometry, rounding, logarithms, exponentials, etc.) via the Math namespace.
Provides Pattern matching and replacement utilities using standard Java regular expressions via the Regex namespace.
Provides JSON parsing and serialization via the Json namespace.
Json.parse(jsonString): Parses a JSON string into a FahrenheitMap or FahrenheitArray.Json.stringify(object): Converts a Fahrenheit object (Map, Array, or primitive) into a JSON string.
data = Json.parse("{\"name\": \"Alice\", \"age\": 30}");
print(data.name); # Alice
obj = { id: 1, active: true };
print(Json.stringify(obj)); # {"id":1,"active":true}
Provides internationalization (i18n) support through message properties files and string interpolation.
Messages.load(path): Loads a .properties file for message lookup.Messages.get(key): Retrieves a message string by key.Messages.parse(str): Expands property placeholders within a string, supporting recursive expansion.
Messages.load("messages/app.properties");
greeting = Messages.get("welcome");
expanded = Messages.parse("Result: greeting");
Provides robust file system operations for reading, writing, and directory management via the File namespace.
Allows creating web servers, WebSockets, and making HTTP client requests via the Net namespace.
Provides standard JDBC database connectivity to query and update SQL databases via the SQL namespace.
Provides fast Matrix operations and transformations via the Matrix namespace.
Provides robust Vector math operations and functions via the Vector namespace.
Provides advanced introspection and dynamic runtime manipulation capabilities via the Reflection namespace.