newspeaklanguage / newspeak

Newspeak is a live object-capability language in the Smalltalk tradition
https://newspeaklanguage.org/
Other
132 stars 11 forks source link

The object view scheme doesn't always update reactively very well #80

Closed gbracha closed 5 months ago

gbracha commented 3 years ago

Except for the exposed view, the rest are not in the fragment tree. All views are recomputed at each update. So only the exposed one retains its state.

gbracha commented 3 years ago

Other views now cause a crash when switched to after update.

gbracha commented 3 years ago

Furthermore, object views are registered at IDE startup. Code changes to the default set of views do not have a live effect.

gbracha commented 3 years ago

That last problem is a general issue with caches anywhere. With exemplar style method browsing, it would be natural to recompute; but transient slots are a better solution - we would naturally clear them on edit.

gbracha commented 5 months ago

The plan is to revise ObjectPresenter to cache active views (at least stateful ones) and override updateFromSameKind: to update new presenter's views from this cache as needed.

gbracha commented 5 months ago

This should be fixed now. The problems were due to a number of factors;