lua-users home
lua-l archive

Re: Why does this work? <SOLVED>

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Feb 4, 2011, at 12:26 AM, Steve Litt wrote:
> On Friday 04 February 2011 00:04:46 Geoff Leyland wrote:
>> On 4/02/2011, at 5:56 PM, Steve Litt wrote:
>>> Thanks Geoff,
>>> 
>>> I think it does help. So I define my new function print() as taking
>>> argument str, so obviously when the program is run str is "Hello World".
>>> Then I pass that str to oldprint(), which is a reference to print(),
>>> which has already been defined as taking an argument, so no further
>>> definition or declaration needed.
>>> 
>>> Does that about sum it up?
>> 
>> Yep. "oldprint(), which is a reference to *the original* print()"
>> If none of these functions were called "print" or anything like it, and
>> there weren't languages where print was part of the language and not just
>> a function, I think it'd all be much simpler to understand.
> 
> OK, I think I have it. Thanks.
This all makes more sense when you consider that 
 function foo(arg1, arg2, etc) end
is just shorthand for
 foo = function(arg1, arg2, etc) end
The function names are just references to otherwise anonymous functions.
Louis Mamakos

AltStyle によって変換されたページ (->オリジナル) /