This page is part of the web mail archives of SRFI 28 from before July 7th, 2015. The new archives for SRFI 28 contain all messages, not just those from before July 7th, 2015.
When modifying code to work for users who use another language, it is frequently necessary to reorder the "data" parts of the output to match the syntax of the language of output. For example, if I am talking about some chunk of data as a thing being acted upon (linguistically, a direct object) by a procedure (linguistically, a verb) in my debugger error messages, then the verb should come before the direct object in English, but the verb should come after the direct object in German. Since both of these (data and function name) are likely to be parameters of the format statement, being unable to reorder them by just changing the format string causes a problem. When finished, I'd like to be able to write something like: (let ((language 'en )) (display (format (strings "sorry, can't ~1a the object ~2a" language) errproc errdata))) Because this would allow all the localization can be done by providing additional format strings for different languages, without the need to rearrange code. Specifically, this would allow the same code to operate in multiple languages as long as a binding for the variable 'language' were in scope and the strings function had lookup tables for format strings in the specified language. (I'm assuming use of the same language specifiers as used in the HTTP protocol). Bear (considering writing that SRFI for the (strings) function...)