module Mom # The ReturnSequence models the return from a method. # # This involves the jump to the return address stored in the message, and # the reinstantiation of the previous message. # # The machine (mom) only ever "knows" one message, the current message. # Messages are a double linked list, calling involves going forward, # returning means going back. # # The return value of the current message is transferred into the return value of the # callers return value during the swap of messages, and just before the jump. # # The callers perspective of a call is the magical apperance of a return_value # in it's message at the instruction after the call. # # The instruction is not parameterized as it translates to a constant # set of lower level instructions. # class ReturnSequence < Instruction end end