REBOL Technologies

Localized FUNCTION and CLOSURE definitions accepted

Carl Sassenrath, CTO
REBOL Technologies
15-Feb-2014 20:22 GMT

Article #0543
Main page || Index || Prior Article [0542] || 6 Comments || Send feedback

The idea has been around for a while now that Rebol needed a more "closed" environment for functions, where local variables would be implicit rather than explicit. In other words, why put the burden on the programmer of tracking what's a local variable. It's problematic if you're not paying attention.

Rebol version 3 added that feature, but the concept wasn't embraced in the naming. For example, the most obviously named FUNCTION mezzanine, used by many newcomers/beginners, didn't support it. You had to use FUNCT. Not so nicely named. To change the definition was debatable. It's friendlier, but disruptive.

Having taken a long break from Rebol development, I guess these days I'm more in favor of disruption and going down a better path for new users. As I've said many times, Rebol 3 is still in alpha. That means we get to fix stuff and make it better. Sorry if it's a bit disruptive. There are always a few bumps in the development road, but you can be afraid to keep moving forward.

For the record, here's the GitHub pull: https://github.com/rebol/rebol/pull/109

Now, if you think it needs further revision, it's time to submit that. Let's get it ironed out.

And many thanks to BrianH, Ladislav, Andreas, BrianD, and anyone else who is helping to push this along.

6 Comments

Updated 31-Aug-2014   -   Copyright Carl Sassenrath   -   WWW.REBOL.COM   -   Edit   -   Blogger Source Code