%my-program/- main directory,
%my-program/main.red- your program,
%my-program/libraries- your "scripts writen by different people/organizations",
%my-program/libraries/popup/main.red- library named
popupwith its file
@nedzadarek the lack of that kind of core features or worst the change in user spec that impacts word behavior like value? https://redlang.red/value really spoilt the original elegance of the language. To make a module robust to any context usage as for encapsulation having to now write:
if error? try [__DEBUG_MODE__: get in system/words '__DEBUG_MODE__][ __DEBUG_MODE__: false ]
instead of just:
unless value? '__DEBUG_MODE__ [__DEBUG_MODE__: false]
like you could in Rebol, is well awkward to say the least.
@GiuseppeChillemi how about returning block/map from second function and setting them in the first function, like this:
f1: function  [ a: b: none set [a b] f2 print ['a a 'b b] ] f2: func  [ [2 3] ] f1 ; a 2 b 3
This way you can have different second functions that are not tied to the first one.
setis more powerful but I kept it simple.
ahas no value.