hm... in your function you don't create the body? newtondestroybody() will crash if you don't pass a valid body.
you know how callbacks work from ent_create() for example.
function mycallback()
{
}
ent_create("model.mdl", nullvector, mycallback);
it's just a normal function. the pointer of this function gets passed to ent_create() and ent_create() will call that function then.
many newton features also work with callbacks.