set-locale: make function! [ "Dynamically set/change locale." language [string! none!] /local dat-file ] [ clear system/locale/words system/locale/dict: none all [ exists? dat-file: join what-dir either language [rejoin [%language/ language %.dat]] [%locale.dat] system/locale: construct/with load dat-file system/locale ] all [ exists? system/locale/dictionary: rejoin [what-dir %dictionary/ system/locale/language %.dat] system/locale/dict: make hash! parse read system/locale/dictionary " " ] locale*: system/locale ]