Die Antwort lautet: Ja.
Der Quellcode einer Methode kann über das Attribut ref(Methode).Programm abgefragt und auch gesetzt werden.
Der Quellcode kann sogar gesetzt werden, während die Methode sich in Ausführung befindet. Allerdings ist dies nicht empfehlenswert, denn die Heuristik, welche die nächste auszuführende Zeile im neuen Quellcode bestimmt, eventuell nicht das gewünschte Ergebnis liefert - je nachdem wie sehr sich der Quellcode verändert hat.
Mir fallen allerdings wenige sinnvolle Anwendungen für Reflexion in SimTalk ein. In der Regel will man damit die Laufzeit optimieren. Ich kann mir aber nicht vorstellen, dass man damit in einem realistischen Modell auch nur 5% Gesamtlaufzeit herausholen kann.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP