Closed PhilMiller closed 5 years ago
Original date: 2016-12-28 20:27:45
This is necessary to eliminating .ci files because of the current arrangement with mainchares
Original date: 2017-05-16 14:08:05
Revisiting this, are there situation where the desired outcome of this issue isn't satisfied?
Maybe readonly
variables need some new treatment? What else would get in the way.
I'm going to have some of the Charmworks interns and new hires explore conversion from mainchare to user main()
to flesh this out further.
Original date: 2017-11-29 18:47:14
I think Eric M is already working on this and is a user of its functionality to some extent already.
https://charm.cs.illinois.edu/gerrit/#/c/2732/ https://github.com/UIUC-PPL/charm/commit/3511cfb6acc346ddc840008f7569b22154d5f8c4
Original date: 2019-04-19 03:17:53
I've updated Justin Szaday's patch (https://charm.cs.illinois.edu/gerrit/c/charm/+/2732 https://github.com/UIUC-PPL/charm/commit/3511cfb6acc346ddc840008f7569b22154d5f8c4) to allow user driven interop to work without mainchares. This allows any charm program to use user-defined main, and removes the need for mainchares as well. It also addresses Phil's above point of still allowing readonlies by splitting the CharmInit into two steps. The old CharmInit is preserved for backwards compatibility.
It does fundamentally change semantics of user driven startup, in that CharmInit returns automatically after charm initialization is done. Previously, it only returned after the charm code called CkExit. However, that meant a mainchare was required. I'm pretty sure Charades is currently the only user of this API, so the breaking changes are not an issue.
Original issue: https://charm.cs.illinois.edu/redmine/issues/1343
No body.