On 25 mars 2014, at 11:42, Sergi Reyner <sergi.rey...@gmail.com> wrote:
> 2014-03-25 10:30 GMT+00:00 Benjamin <benjamin.vanryseghem.ph...@gmail.com>: > Within an instance method or a constructor, this is a reference to the > current object — the object whose method or constructor is being called. You > can refer to any member of the current object from within an instance method > or a constructor by using this. > > from: http://docs.oracle.com/javase/tutorial/java/javaOO/thiskey.html > > thisContext in smalltalk points to the execution context of the method being > currently evaluated. > So definitely this and self are the “same” (as long as we do not talk about > inner classes) > > Yeah, that part I truly understand.I do know enough Java and Smalltalk to > understand that "this" and "self" are equivalent (topic which somehow > evaporated from the debate, and replaced with "this is the same and > thisContext because [unintelligible Java code]". > > thisContext does not exist in Java AFAIK > > That´s exactly what my intuition led me to. But when I tried to explain that > I, too, don´t think that Java has a concept of "thisContext" I was presented > with this: > > Field a = sun.misc.VM.class.getDeclaredField("directMemory"); > a.setAccessible(true); > a.get(null); > > Which, after some investigation, and as far as I understood, looks to me as > if all it does is retrieve what "this" points to. For me, that snippet just returns the value of a static field named directMemory in the class sun.misc.VM. Field a = sun.misc.VM.class.getDeclaredField("directMemory"); // reify the field a.setAccessible(true); // by-pass visibility checks (maybe it's private) a.get(null); // get the value of that field So that's just an example of simple introspection, but it's not related to stack introspection. > It´s not really relevant because what I was arguing is that Smalltalk > reflection operates at a higher level, which that piece of code proves pretty > nicely, but since we got there I´d like to understand everything argued. > > Cheers, > Sergi > > PS: Note that I´m not trying to win an internet debate, but simply to > understand :) > > >