Программирование среды песочницы в реболе немного похоже на spoon.net - PullRequest
0 голосов
/ 14 августа 2010

http://spoon.net давайте запустим настольное приложение, загрузив их из Интернета.Когда вы выходите, это восстанавливает систему.

Вкл. http://askpoweruser.com Я хотел бы сделать то же самое.Моя идея состояла бы в том, чтобы сохранить всю системную иерархию на диске и затем восстановить ее в конце выполнения.

Достаточно ли одной строки кода (кажется слишком простым для такой сложной функции, поэтому я сомневаюсь:)):

save %system.txt system

что такое уточнение сериализации?было бы полезно в этом случае?

для восстановления системы, тогда я бы просто сделал

load %system.txt

Ответы [ 3 ]

1 голос
/ 15 августа 2010

Вы можете использовать что-то вроде CryoPID:

http://cryopid.berlios.de/

Это сработало бы на уровне процесса, и вы могли бы использовать его для чего-то кроме Rebol. Но это будет зависеть от ОС.

1 голос
/ 23 августа 2010

вот мой объект:

>> o: context [b: "b" f: does [do make function! [] [print ["a"]]] oo: context [a: 1]]
>> ?? o
== o: make object! [
    b: "b"
    f: func [][do make function! [] [print ["a"]]]
    oo: make object! [
        a: 1
    ]
]

изменить что-то в функции f:

>> o/oo/a: 2
>> append second last second first next next next third :o "b"
>> o/f
== a b
>> save/all %t.r :o
>> p: load %t.r
>> ?? p
== p: make object! [
    b: "b"
    f: func [][do make function! [] [print ["a" "b"]]] ;<----
    oo: make object! [
        a: 2              ;<------
    ]
]
>> p/f
== a b ;<----

все выглядит нормальноНо, конечно, это всего лишь один тест.

1 голос
/ 15 августа 2010

В настоящее время вы не можете сохранить все изображение Rebol следующим образом. Вы можете сериализовать значения Rebol с помощью «плесень / все и сохранить значения с помощью» сохранить. Но AFAIK сериализация неправильно сохраняет функции внутри объектов.

...