Rails is not written in Ruby

Nope.
requireing a file affects global namespace, so if any one of your classes require some gem all subsequent scopes can access that gem.

Very crappy example but I think it shows my point. We also cant require specific functions.

EDIT: There was some discussion about this on the bug tracker but I dont think anything came from it Feature #14982: Improve namespace system in ruby to avoiding top-level names chaos - Ruby master - Ruby Issue Tracking System

2 Likes