You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Awelon Bytecode does not provide primitive operators for reflection and introspection because these are security sensitive operations. However, it has always been expected that access to these utilities should be available through ABC's effects model.
It seems to me that I should develop a good capability-secure API (starting with a conventional power block) for introspection and reflection. For the moment, I'm disabling the writeABCFile/readABCFile functions with the goal that most of said logic should be accomplished through fine-grained operations and capabilities.
General Requirements
I should be able to determine the structure of most values:
is it a sum, a product, a unit value, a block?; perhaps x → (x+x)
is it a sealed value?
if so, a hint/brand/fingerprint for the sealer (i.e. to support key rings)
ability to unseal discretionary sealed values
no general ability to unseal fully sealed values because might be encrypted
for a block:
ability to serialize blocks and peek inside?
I still need to decide how to represent fully sealed values within a block, i.e. with respect to serializing the block. I have a few ideas for this, including representing them as embedded ciphertext wrapped with a special {:sealer} variation. But this is mostly a separate issue.
The text was updated successfully, but these errors were encountered:
Awelon Bytecode does not provide primitive operators for reflection and introspection because these are security sensitive operations. However, it has always been expected that access to these utilities should be available through ABC's effects model.
It seems to me that I should develop a good capability-secure API (starting with a conventional power block) for introspection and reflection. For the moment, I'm disabling the writeABCFile/readABCFile functions with the goal that most of said logic should be accomplished through fine-grained operations and capabilities.
General Requirements
I should be able to determine the structure of most values:
x → (x+x)
I still need to decide how to represent fully sealed values within a block, i.e. with respect to serializing the block. I have a few ideas for this, including representing them as embedded ciphertext wrapped with a special {:sealer} variation. But this is mostly a separate issue.
The text was updated successfully, but these errors were encountered: