8< ----- snip -----

> 
> This is one possible scenario although there is always the risk of
> changing words that are in normal strings. Another point is that
> ideally this should be made transparent and the "localized" ruby file
> should first require a specific module which does the processing
> before ruby evaluates the rest of the file. Is this possible?
> 
> e.g. something like
> 
> -------------------------------------
> require 'french_ruby'
> 
> i = 0
> tantque i < 5
>     affiche i
> fin
> -------------------------------------
> 
> would be transparently transformed internally into this before it is
> executed
> 
> -------------------------------------
> i = 0
> while i < 5
>     print i
> end
> -------------------------------------
> 
> Laurent
> 
> 

but what happens when they do

   require 'french_ruby'
   
   while = 0                 # while is not a keyword in french_ruby!
   tantque while < 5
       affiche while
   fin

When translated to ruby_en that would turn into

   while = 0
   while while < 5
       print while
   end

So there are 2 options that I see:
   1) learn the keywords and avoid them - which goes against the idea
of the localization
   2) to a reverse localization - while-> tantque and tantque->while,
which would create

   tantque = 0
   while tantque < 5
       print tantque
   end

This of course will create confusion if read by a person whose native
language is french, so the translation should only be done on runtime.