Blog

New BoxLang Feature: Functional binding to member methods

Maria Jose Herrera September 09, 2024

Spread the word

Maria Jose Herrera

September 09, 2024

Spread the word


Share your thoughts

Streamline your code with smooth method referencing!

We’re excited to unveil a new feature that makes method referencing in BoxLang even smoother. Building on our recent update introducing functional static binding to built-in functions, we're now bringing the same ease to member methods.

BoxLang Ticket

What’s New?

With this update, you can now directly bind to member methods without the fuss of declaring closures. This means you can streamline your code and make it more readable.

For example, instead of using closures like this:

pendingOrders.each(order => order.submit())

You can now simply use:

pendingOrders.each(.submit)

How Does It Work?

By prefixing your method name with a period (.), you can reference member methods without needing to bind them to a specific instance. This makes your code more concise and eliminates extra boilerplate. Plus, if your methods require arguments, you can pass them like this:

[ "brad", "luis", "jon" ].map(.left(1)) // [ "b", "l", "j" ]

Here, .left(1) is used to call the left method on each string in the array, stripping one character from each name.

Try BoxLang

Why This Matters

This feature not only simplifies method binding but also keeps your code clean and expressive. It’s all about making your development experience smoother and more intuitive.

Want to dive deeper into this feature? Check out the details in our ticket: [BL-351]

BoxLang Ticket

Happy coding!

Add Your Comment

Recent Entries

12 days of BoxLang - Day 3: SocketBox!

12 days of BoxLang - Day 3: SocketBox!

As BoxLang continues evolving into a modern, high-performance, JVM-based runtime, real-time communication becomes essential for the applications we all want to build: dashboards, collaboration tools, notifications, live feeds, multiplayer features, and more.

That’s where SocketBox steps in — the WebSocket upgrade listener built to work seamlessly with CommandBox and the BoxLang MiniServer. ⚡

Today, for Day 3, we’re highlighting how SocketBox supercharges BoxLang development by giving you fast, flexible, and framework-agnostic WebSocket capabilities.

Maria Jose Herrera
Maria Jose Herrera
December 12, 2025
12 Days of BoxLang - Day 2: CommandBox

12 Days of BoxLang - Day 2: CommandBox

BoxLang + CommandBox: The Enterprise Engine Behind Your Deployments

For Day 2 of our 12 Days of Christmas series, we’re diving into one of the most powerful parts of the BoxLang ecosystem: CommandBox the defacto enterprise servlet deployment platform for BoxLang.

If BoxLang is the language powering your applications, CommandBox is the engine room behind it all. ⚙️

Victor Campos
Victor Campos
December 11, 2025
12 Days of BoxLang - Day 1: ColdBox

12 Days of BoxLang - Day 1: ColdBox

ColdBox + BoxLang: The Future of Modern MVC on the JVM Welcome to Day 1 of the 12 Days of BoxLang

To kick off the series, we’re starting with one of the most powerful combinations in the Ortus ecosystem: ColdBox + BoxLang.

ColdBox has been the standard for modern CFML MVC development for over a decade. BoxLang is the next-generation dynamic language built for JVM and beyond. Together, they reshape how developers build web apps, APIs, microservices, CLIs, and soon desktop applications.

Let’s dive into why ColdBox 8 + BoxLang PRIME is a major milestone for the future of modern application development.

Maria Jose Herrera
Maria Jose Herrera
December 10, 2025