Comments on: Protecting the system object

Carl Sassenrath, CTO
REBOL Technologies
13-Aug-2009 5:06 GMT

Article #0232
Main page || Index || Prior Article [0231] || Next Article [0233] || Post Comments || Send feedback

Ok, in A77 you may happen to see this line on boot...

system object protected

What does it mean? Well, try this:

>> system/version: 1.2.3
** Script error: protected variable - cannot modify: version


>> append system 'test
** Script error: protected value or series - cannot modify
** Where: append
** Near: append system 'test

So, there is a mild level of protection now on the system object, but there's more work to do here.

The system object is fairly complex, and the protect function is still just a bit like using a pea shooter to hunt elk. A lot more power is required if we're going to have dinner.

To view the current protector function:

source protect-system-object

If you dust off your editor and fiddle around with this code, you'll begin to see some of the issues. Various sub-series are not being protected properly (e.g. you can clear system/catalog/datatypes). In addition, several subsystems are updating the system object in ways that prevent their sub-objects from being protected (e.g. system/schemes.)

Well, not to worry. We'll chisel away on this until we get it how we want it. I'm sure BrianH has some ideas brewing already...

Post Comments

Post a Comment:

You can post a comment here. Keep it on-topic.


Blog id:



 Note: HTML tags allowed for: b i u li ol ul font span div a p br pre tt blockquote

This is a technical blog related to the above topic. We reserve the right to remove comments that are off-topic, irrelevant links, advertisements, spams, personal attacks, politics, religion, etc.

Updated 4-Oct-2023 - Edit - Copyright REBOL Technologies -