boxlang-core-dev-bif-development

Create and register BoxLang built-in functions using @BoxBIF annotations.

Updated Apr 10, 2026
One-click install
npx skills add https://github.com/ortus-boxlang/skills --skill boxlang-core-dev-bif-development
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: boxlang-core-dev-bif-development
Source: https://github.com/ortus-boxlang/skills/tree/main/boxlang-core-development/bif-development
Command: npx skills add https://github.com/ortus-boxlang/skills --skill boxlang-core-dev-bif-development

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

BoxLang BIF development simplifies creating and registering builtin functions that are discoverable at module load time and usable from BoxLang code, reducing boilerplate and cross-language gaps.

Core Features & Use Cases

  • Annotation-based BIF definitions with @BoxBIF and optional BoxMember for member functions.
  • Cross-language support by implementing BIFs in BoxLang or Java and registering via modules.
  • Runtime access to services and contexts through BoxRuntime and context APIs for advanced BIFs.

Quick Start

Place a BoxLang BIF class annotated with @BoxBIF under your module's bifs/ directory and load it through your module to expose the new BIF.

Frequently Asked Questions about boxlang-core-dev-bif-development

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create built-in functions in BoxLang using annotations?

You can create BoxLang built-in functions by annotating a class with @BoxBIF and placing it under your module's bifs/ directory to enable automatic discoverability and registration at module load time.

Can I implement BoxLang BIFs in Java and still use them from BoxLang code?

Yes, BoxLang BIFs support cross-language implementation, allowing you to write built-in functions in either BoxLang or Java and register them via modules for seamless invocation from BoxLang code.

How do I add a member function to a BoxLang BIF?

To add a member function, you use the optional BoxMember annotation alongside @BoxBIF when defining your built-in function, allowing it to be invoked as a method on relevant objects.

How do I access runtime services from inside a BoxLang BIF?

You can access runtime services and contexts from inside a BIF by leveraging BoxRuntime integration and context APIs, which provide the necessary service hooks for advanced built-in function operations.

What is the best way to register multiple BIFs in a BoxLang module?

The best way to register multiple BIFs is through module-based registration, which automatically discovers and loads all classes annotated with @BoxBIF from the module's bifs/ directory.