lambdaについて

lambdaはreturnがクロージャから戻り、また引数チェックを行うprocというところまで理解しました。
ですが、このlambdaメソッドはどのように定義されているのでしょうか?
引数チェックはなんとなくメタプログラミングでできそうな気がするのですが、returnの挙動を変える
なんてことができるのでしょうか?

Cで実装されているのかもしれませんが、もしRubyで実装するとすればどのようになるのか教えてください。