oops - type in my post, it should have said:
<option size="40"
tal:repeat="lang here/get_all_languages"
tal:attributes="value repeat/lang/index;
selected python:repeat['lang'].index in \
here.getLanguages() and 'yes' or nothing"
tal:content="lang">Language</option>
i.e. repeat/lang/index instead of repeat/number/index.
Felix.