FEATURES/PROBLEMS: * Only does French, English and Spanish out of the box. Very easy to train new languages though. * It can be made far more efficient at the comparison stage, but all in good time..! It still beats literal dictionary approaches. * No filter selection yet, you get ‘em all loaded. * Tests are reasonably light. == SYNOPSIS: Full Example require ’whatlanguage’ texts = [] texts << %q{Deux autres personnes ont été arrêtées durant la nuit} texts << %q{The links between the attempted car bombings in Glasgow and London are becoming clearer} texts << %q{En estado de máxima alertaen su nivel de crítico} texts << %q{Returns the object in enum with the maximum value.} texts << %q{Propose des données au sujet de la langue espagnole.} texts << %q{La palabra "mezquita" se usa en español para referirse a todo tipo de edificios dedicados.} texts.each { |text| puts "#{text}… is in #{text.language.to_s.capitalize}" } Initialize WhatLanguage with all filters wl = WhatLanguage.new(:all)