*** ijon_ has quit IRC | 00:02 | |
*** springbok has joined #io | 02:25 | |
*** stevedekorte has joined #io | 03:24 | |
*** gatesphere has quit IRC | 04:13 | |
*** stevedekorte has quit IRC | 04:36 | |
*** AKASkip has joined #io | 04:58 | |
*** ElMonkey_ has quit IRC | 05:09 | |
*** ElMonkey_ has joined #io | 05:09 | |
*** stevedekorte has joined #io | 05:32 | |
*** AKASkip has quit IRC | 06:53 | |
*** bjz has joined #io | 07:13 | |
*** bjz has quit IRC | 07:15 | |
*** pchalupa has joined #io | 07:16 | |
*** AKASkip has joined #io | 07:30 | |
*** bjz has joined #io | 08:05 | |
*** bjz has quit IRC | 08:19 | |
*** pchalupa has quit IRC | 08:47 | |
*** pitr-ch has joined #io | 08:48 | |
*** stevedekorte has quit IRC | 09:11 | |
*** ijon_ has joined #io | 09:18 | |
*** ijon_1 has joined #io | 09:29 | |
*** ijon_ has quit IRC | 09:32 | |
*** braindancer22 has quit IRC | 09:44 | |
*** braindancer2 has joined #io | 09:53 | |
*** ijon_1 has quit IRC | 10:02 | |
*** ijon_ has joined #io | 10:03 | |
*** bjz has joined #io | 10:18 | |
*** bjz has quit IRC | 10:29 | |
*** bjz has joined #io | 10:50 | |
*** stevedekorte has joined #io | 10:50 | |
*** stevedekorte has quit IRC | 10:50 | |
*** pitr-ch has quit IRC | 11:05 | |
*** bjz has quit IRC | 11:59 | |
*** bjz has joined #io | 12:05 | |
*** AKASkip has quit IRC | 12:13 | |
*** ijon_ has quit IRC | 12:15 | |
*** ijon_ has joined #io | 12:16 | |
*** ijon_ has quit IRC | 13:08 | |
*** whaletechno has quit IRC | 13:08 | |
*** pitr-ch has joined #io | 13:21 | |
*** ijon_ has joined #io | 15:24 | |
*** whaletechno has joined #io | 17:06 | |
*** TheMonkey has joined #io | 17:46 | |
*** ElMonkey_ has quit IRC | 17:50 | |
*** pitr-ch has quit IRC | 18:07 | |
*** bb010g has quit IRC | 18:08 | |
*** ijon_ has quit IRC | 18:56 | |
*** braindancer2 has quit IRC | 19:14 | |
*** braindancer2 has joined #io | 20:13 | |
*** bjz has quit IRC | 20:34 | |
*** bjz has joined #io | 20:54 | |
*** bjz has quit IRC | 21:04 | |
*** miasma has joined #io | 21:15 | |
miasma | hi there, io's still alive? | 21:15 |
---|---|---|
*** bjz has joined #io | 21:29 | |
miasma | this has probably been asked million times, but i was curious about sandboxing some Io program | 21:29 |
miasma | so I guess a simple way to do that would be to hide the references to the core objects that you want to protect | 21:30 |
miasma | or use the removeSlots method | 21:30 |
miasma | but then again, I totally forgot how the imports work in Io. the documents didn't explain it to me. e.g. if I hide Core, how can I still access Date | 21:31 |
*** bjz has quit IRC | 21:44 | |
jer | alright, so io's inheritance model pretty much doesn't allow you (or rather makes it hard to) hide certain things | 22:20 |
jer | methods aren't copied to subclasses, nor is there any special machinery in the lookup logic to make inheritance works | 22:20 |
jer | it simply walks the list | 22:20 |
jer | depth first | 22:20 |
jer | if you have an object and you say removeSlot("removeSlot") you'll still be able to call removeSlot | 22:21 |
jer | since your object still inherits from the object which defines it | 22:21 |
jer | now you could hack a primitive into the runtime on Object that says "ignoreSlot" which will cause the lookup mechanism to fail if the slot being looked up is in that list | 22:21 |
jer | but it doesn't currently exist | 22:22 |
*** gatesphere has joined #io | 22:28 | |
*** TheMonkey has quit IRC | 23:22 | |
*** TheMonkey has joined #io | 23:22 | |
miasma | jer: how about hiding stuff like IO objects? | 23:28 |
miasma | at the beginning when the VM is up, modify the builtin objects so that all of them lose references to IO stuff | 23:29 |
miasma | i guess eventually no object refers to IO anymore so it cannot be called | 23:29 |
miasma | jer: what about the imports? how do they work? i kind of assumed if you e.g. reassign something to Core, the "contents" also disappear | 23:30 |
miasma | i mean e.g. Data wouldn't be available | 23:31 |
miasma | in some Java style languages you would do import std.lang.Core; | 23:31 |
miasma | then import Core.Date; | 23:31 |
miasma | i tried to manipulate various methods in the Lobby and Object, but a reference to Date still succeeded | 23:32 |
*** braindancer22 has joined #io | 23:40 | |
*** braindancer2 has quit IRC | 23:44 | |
miasma | ah nevermind | 23:50 |
miasma | so there's some circular thing going on | 23:50 |
miasma | Object -> Lobby -> Protos -> Core -> Object | 23:51 |
miasma | so yea, basically masking stuff from Core hides it | 23:53 |
Generated by irclog2html.py 2.11.0 by Marius Gedminas - find it at mg.pov.lt!