Personalmente, creo que el guión como separador de palabras permite una legibilidad y tipabilidad máximas en general, por lo que recomiendo que, cuando sea posible (en algunos contextos, no se pueda usar un guión, como identificadores en la mayoría de los idiomas). Una cosa importante que hay que tener en cuenta es que el esquema que elijas influirá en la declaración obligatoria que los usuarios utilizarán con tu lib, y quieres que evite tener un nombre de gema diferente al nombre de la biblioteca.
Malo
# gem install my_cool_lib
require 'my-cool-lib'
# gem install MyCoolLib
require 'my_cool_lib'
Buena
# gem install my_cool_lib
require 'my_cool_lib'
# gem install my-cool-lib
require 'my-cool-lib'
Por desgracia, un pequeño puñado de bibliotecas violan esta regla sencilla usabilidad. No seas una de esas bibliotecas. :)
La palabra de rubí Gems es utilizar subrayados (aka caja de corte o serpientes) para nombres de archivo y los nombres de la gema: [nomenclatura coherente] (http://guides.rubygems.org/patterns/ # consistente-naming). – stevenharman
Ese artículo que citó para 'lowercasenounderscore.rb' es antiguo y no he visto a nadie más alegando eso como la convención. Underscores es casi universalmente el estándar. – SFEley