Hooks: Functions as params question

I have been reading up on this: http://trac.caspring.org/wiki/LuaPerformance for awhile, trying to follow the most efficient techniques but I had a quick question about test #8.
It states that putting a function inline as a parameter for another function is 10 times slower than making the function and then calling it in the param. Now does anyone know how this relates back to hooks? Would I be better off doing code set #1 or code set #2?

#1
[lua]
hook.Add( “PlayerInitialSpawn”, “PlayerInitialSpawn”, function( ply )
– Do stuff
end )
[/lua]

#2
[lua]
local PlayerInitialSpawnFunc = function(ply)
– Do stuff
end
hook.Add( “PlayerInitialSpawn”, “PlayerInitialSpawn”, function( ply ) )
[/lua]

If that 10x slower relates back to hooks as well then I’d assume that it would be a HUGE problem if all hooks were made like #1.

EDIT:
Or I guess I should also ask about using the GM:PlayerInitialSpawn( ply ) as well and how that relates to both

It does not re-define the function if that’s what you mean, it just passes a reference.

I guess I just mean about efficiency, relating back to the test performed on that site I linked. Is the 2nd code chunk 10x slower than the first? I’m not sure if making function inline with a hook is seen the same as passing a function as a param into another function.

It is.

It is, as in it is 10x slower? If so then I’m surprised that so many people do it inline.

EDIT: (made after Wizard’s response below w/o me realizing it)
Well I dont know why I didn’t test it myself before, but here are my results.

#1
[lua]
local firstTime = 0
local lastTime = 0
hook.Add( “testHook”, “FWBuilding”, function( i )
if i == 10000 then
lastTime = SysTime()
MsgAll( "First: “…firstTime…” Last: “…firstTime…” diff: “…lastTime-firstTime…”
")
end
end )

concommand.Add(“testSpeed”, function( ply, cmd, args)
firstTime = SysTime()
for i=1, 100000 do
hook.Call(“testHook”, nil, i )
end
end )
[/lua]

#2
[lua]
local firstTime = 0
local lastTime = 0
local testHook = function( i )
if i == 10000 then
lastTime = SysTime()
MsgAll( "First: “…firstTime…” Last: “…firstTime…” diff: “…lastTime-firstTime…”
")
end
end
hook.Add( “testHook”, “FWBuilding”, testHook )

concommand.Add(“testSpeed”, function( ply, cmd, args)
firstTime = SysTime()
for i=1, 100000 do
hook.Call(“testHook”, nil, i )
end
end )
[/lua]

Ran both of them multiple times and the results, although I got two different ones, were identical between #1 and #2
First: 11632.833007813 Last: 11632.833007813 diff: 0.0068359375
First: 11633.208007813 Last: 11633.208007813 diff: 0.0078125

Same speed.