uporaba pomnilnika prevodov pri prevajanju uporabniskih vmesnikov v prostih programih primoz peterlin andraz tori marko samastur roman maurer ales kosir institut za biofiziko medicinska fakulteta univerza v ljubljani lipiceva si ljubljana slovenija primoz peterlin biofiz mf uni lj si univerza v ljubljani andraz tori guest arnes si markos elite org hermes softlab litijska si ljubljana slovenija roman maurer ales kosir hermes si povzetek prosto programje kakrsno je sistem linux z namizjema kde ali gnome in programi iz projekta gnu prevajajo skupine prostovoljcev navadno vsak prostovoljec prevaja posamicne logicno povezane dele vecje celote ker imajo prostovoljci razlicno jezikovno a dobro programersko znanje hkrati pa je tehnicni jezik prostega programja neuveljavljen in neenoten je pri teh projektih pomoc v obliki programov za zagotavljanje usklajenosti prevodov se pomembnejsa kot pri krajevnih prilagoditvah komercialnih programov kjer navadno delujejo manjse povezane strokovno izenacene skupine znotraj podjetij skupina za slovenjenje linuxa si pomaga z lastnim izdelkom programom smart program namenjen namigom pri prevajanju novih fraz ter usklajevanju obstojecih prevodov iz dvojezicnega anglesko slovenskega poravnanega korpusa obstojecih prevodov sestavi podatkovno zbirko ki jo podpira streznik sql in jo uporabi kot pomnilnik prevodov uvod proti koncu osemdesetih let predvsem pa v devetdesetih letih so postala trzisca izven angleskega govornega obmocja za industrijo programske opreme dovolj pomembna da so vecje programerske hise zacele razmisljati o krajevnem prilagajanju lokalizaciji programja sredi devetdesetih let so se temu trendu pridruzili tudi pisci prostega programja pri projektu gnu ki je bil od sredine osemdesetih let dalje eden glavnih zagovornikov zamisli o prostem programju stallman je prvo pobudo za prilagajanje dal poleti patrick d'cruze d'cruze od nekaj predlaganih prototipnih izvedb krajevnega prilagajanja se je kot najobetavnejsi pokazal sistem gnu gettext drepper prevajanje komunikacije programov z uporabnikom je iz vec razlogov primerno za uporabo racunalnisko podprtega prevajanja computer assisted translation cat po eni strani nas v to sili potreba terminologija v vecjem programskem sklopu kot je na primer namizje mora biti usklajena saj uporabnikov ne zanima kdo kdaj in kako je prevajal posamezne sestavine namizja posebej pri ohlapno povezanih skupinah prostovoljcev ki navadno prevajajo prosto programje je zato programska podpora usklajenosti se kako dobrodosla po drugi strani pa so tovrstna besedila tudi iz tehnicnih razlogov posebej primerna za racunalnisko podprto prevajanje zaradi tehnicne izvedbe kot zgled obdelamo sistem gnu gettext velja pa splosneje prevodi ze sami po sebi predstavljajo dvojezicni korpus vecinoma poravnan na ravni povedi erjavec ker gre za besedila tehnicne narave z omejenim enoznacnim besediscem mnogimi ponavljajocimi se termini in besednimi zvezami pa je velikost pri kateri taksen korpus ze postane uporaben bistveno manjsa kot pa pri splosnonamenskih jezikovnih korpusih webb ustaljeno poimenovanje za taksen dvojezicni poravnani korpus je pomnilnik prevodov angl translation memory tm vintar a vintar b po definiciji skupine eagles je to ``vecjezicni besedilni arhiv ki vsebuje segmentirana poravnana razclenjena in klasificirana vecjezicna besedila ter dovoljuje shranjevanje besedil in iskanje po njih glede na razlicne pogoje'' eagles zamisel o racunalniski podpori prevajanju uporabniskega vmesnika programov ni nova ne med prostim programjem ne sicer projekt prosto dostopnega namizja kde vkljucuje razvoj programa kbabel kiefer a ki se v mnogocem zgleduje po nekaj starejsem ktranslatorju rizzi ter vecjezicni spletni glosar kdedict kiefer b pri projektu namizja gnome pa za racunalnisko podporo prevajanju razvijajo orodja gtranslator fatih muli reichl in gnopo persenius ne smemo pozabiti tudi na starosto med orodji za racunalnisko podprto prevajanje to je na urejevalniski nacin po za urejevalnik emacs nacin je standardni del paketa gnu gettext podobne vendar komercialne resitve obstajajo tudi v drugih okoljih omenimo naj le atril déjà vu http www atril com trados workbench http www trados com in ibm translation manager http www ibm com software ad translat tm celovitejsi in natancnejsi pregled pa je na voljo v vintar a program smart v prispevku predstavljamo pri nas razvit program smart tori za pomoc pri prevajanju in preverjanje skladnosti prevodov iz poravnanih parov fraz izvirnika in prevoda smart sestavi relacijsko zbirko podatkov trenutno fond fraz obsega blizu poravnanih fraz v anglescini in slovenscini tabela slednje izvirajo vecinoma iz namizij kde in gnome ter programov gnu ki jih poganjamo v ukazni vrstici ko je zbirka sestavljena lahko zbrane prevode uporabimo pri prevajanju novih program smart tori precese datoteko z neprevedenimi frazami in ob vsaki neprevedeni frazi poskusi poiskati ustreznico v zbirki algoritem ujemanja pametno razlikuje med velikimi in malimi crkami uposteva prazne prostore in druge posebne znake ki se uporabljajo kot bliznjice v okoljih predstavljena resitev ponuja v primerjavi s prej nastetimi boljso podporo za slovenscino je pa tudi od vseh nastetih najbolj neodvisna od strojnega in programskega okolja od splosnonamenskih programov predstavlja boljso podporo za prevajanje sporocil v prostih programih njena prednost pa je tudi ta da obvlada tako posebnosti programov namizja kde kot tudi programov namizja gnome uporabljena orodja predlagana resitev uporablja vrsto orodij prosto dosegljivih v internetu to so gnu gettext knjiznica in nabor namenskih programov za krajevno prilagoditev predmetni relacijski podatkovni streznik postgresql programski jezik perl ter perl dbi vmesnik med perlom in podatkovno zbirko gnu gettext gnu gettext drepper in sod je bil prvi uporabni prosti sistem za krajevno prilagajanje zato ga danes uporablja velika vecina proste programske opreme njegova uporaba pa se zaradi dobrih lastnosti sistema vse bolj siri tudi na komercialna orodja in komercialne programske pakete programsko opremo za njegovo uporabo napisemo tako da jo internacionaliziramo kar pomeni da posplosimo vse njene kulturne geografske in jezikovne lastnosti do te mere da programi sami ne vsebujejo teh krajevnih podatkov namesto tega operacijski sistem po nastavitvi uporabnika poskrbi za cimvecjo lokalizacijo teh metod na uporabnikovo geografsko in kulturno obmocje sporocila s katerimi se sporazumevamo s programom pa so izvedena s sistemom gnu gettext sistem gnu gettext pricakuje prevode sporocil v jezik uporabnikov tako da program uporabi posebne datoteke po portable object ki obsegajo pare fraz v izvirniku in prevodu denimo msgid error while reading s msgstr napaka pri branju s pri tem zapis msgid oznacuje izvirno msgstr pa prevedeno frazo oznaka s pomeni da program na tisto mesto vrine niz znakov ki jih dobi funkcija za izpis kot svoj argument v danem zgledu je to ime datoteke oznake v frazah so enake kot jih doloca standard posix za formatna dolocila funkcije printf v programskem jeziku c izkusnje kazejo tabela da fraze vecinoma niso daljse od ene vrstice povprecje na nasem vzorcu je priblizno vrstice na frazo seveda pa datoteke po dopuscajo tudi fraze ki se raztezajo prek vec vrstic v tem primeru je niz pri msgid prazen besedilo izvirnika pa sledi v vrsticah do oznake msgstr kot kaze zgled msgid kfontmanager version n copyright n bernd johannes wuebben n wuebben math cornell edu n msgstr kfontmanager razlicica n avtorske pravice n bernd johannes wuebben n wuebben math cornell edu n oznake n v besedilu dolocajo kje naj se vrstice s sporocili pri izpisu v programu zakljucijo oblika datotek po ob frazah dopusca se komentarje bodisi komentarje prevajalca ali avtorja programa bodisi strojno generirane zaradi togosti osnovne razlicice sistema gnu gettext ki ni dovoljevala zamenjave vrstnega reda argumentov pri izpisu sporocila je bil sistem dopolnjen druga izdaja namizja kde uporablja razsirjeno obliko datotek po kjer dolocimo zaporedno stevilko argumenta ne pa njegove vrste oznaka tako pomeni prvi argument v izvirniku drugega in tako dalje ta razsiritev omogoca da se vrstna reda argumentov v izvirniku in prevodu razlikujeta kot prikazuje zgled msgid file cannot be opened by tool msgstr orodje ne more odpreti datoteke druga razsiritev ki so jo v obliko datotek po vnesli pri kde pa je pojasnilo sporocila niz na zacetku izvirne fraze pomeni pojasnilo ki se pri prevodu preskoci sluzi za boljse razumevanje in razlocevanje konteksta v katerem je sporocilo s to razsiritvijo je premagana ena glavnih pomanjkljivosti sistema gnu gettext msgid forward call n forward msgstr posreduj pomen znaka bomo opisali v razdelku o bliznjicah sistem gnu gettext sestavlja programska knjiznica libintl ter nabor namenskih programov gettext s katerim lahko izpisujemo prevode sporocil iz kataloga sporocil msgcmp s katerim primerjamo dve datoteki po msgcomm s katerimi poiscemo fraze skupne dvema datotekama po msgfmt s katerim prevedemo datoteko po v strojno berljivo obliko mo message object msgmerge s katerim zdruzimo dve datoteki po msgunfmt s katerim sporocila pretvorimo iz prevedene oblike mo v cloveku berljivo obliko po in xgettext s katerim samodejno izluscimo iz izvorne kode programa vsa sporocila kako deluje mehanizem gettext ob prevajanju prevajalnik predmetno kodo programa poveze s knjiznico libintl in v program shrani podatke o tem kje naj isce kataloge prevedenih sporocil ti so shranjeni v prevedeni obliki mo v podimenikih sistemskega imenika usr share locale ob izvajanju poskusi program glede na nastavitev spremenljivk okolja lc messages lc all ali lang poiskati katalog sporocil za zeleni jezik vsebino teh spremenljivk nastavlja uporabnik ali skrbnik sistema ce je slo iskanje in nalaganje datotek s sporocili brez napak program nadomesti angleska sporocila s krajevno prilagojenimi ce iskanega kataloga sporocil ni ali ce je nepopoln pa kot zasilna razlicica vselej ostaja izvirno anglesko sporocilo programski paket stevilo datotek stevilo fraz msgid stevilo vrstic povprecno vrstic frazo skupaj znakov gnome gnu kde kde kdeadmin kdebase kdegames kdegraphics kdemultimedia kdenetwork kdepim kdesdk kdetoys kdeutils koffice others red hat linux red hat linux caption tabela statistika prevedenih programskih paketov namizje kde je podrobno razclenjeno po tematskih sklopih postgresql program smart zaradi hitrega dostopa do zapisov te hrani v relacijski zbirki postgresgl predmetni relacijski podatkovni streznik postgresql ima dolgo zgodovino njegove korenine segajo do relacijske podatkovne zbirke ingres stonebraker in sod ki so jo razvijali na kalifornijski univerzi v berkeleyju konec sedemdesetih in v prvi polovici osemdesetih let razvoj ingresa je do trznega izdelka nadaljevalo podjetje relational technologies ingres corporation ki je pozneje postalo del velikana computer associates skupina pod vodstvom michaela stonebrakerja na isti univerzi pa je nadaljevala razvoj predmetno relacijskega podatkovnega streznika postgres stonebraker in rowe stonebraker in sod tega je v trzni izdelek razvilo podjetje illustra ki je pozneje postalo del podjetja informix dva podiplomska studenta profesorja stonebrakerja jolly chen in andrew yu sta med letoma in nadomestila jezik postquel ki ga je uporabljal postgres s standardnim sestavljenim jezikom za poizvedbe structured query language sql tega so zaceli v zacetku sedemdesetih let razvijati pri ibm codd tako dopolnjeni postgres sta poimenovala postgres yu in chen chen in yu sta zapustilay berkeley vendar pa je chen nadaljeval z razvojem in poleti je vzdrzevanje in razvoj projekta prenesel na skupino prostovoljcev z interneta da bi poudarili podporo za jezik sql so ime pozneje spremenili v postgresql lockhart danes ozje jedro razvijalcev in vzdrzevalcev podatkovnega streznika postgresql predstavlja ob sestclanskem svetu se sedemnajstclanska ekipa programerjev s treh celin spletna stran projekta je http www postgresql org v casu pisanja tega prispevka je zadnja izdaja nosila stevilko perl programski jezik perl practical extraction and report language prirocni jezik za izvlecke in porocila in tolmac zanj je napisal larry wall leta wall in sod po avtorjevih besedah je poskusil v njem zdruziti najboljse lastnosti lupinskih skriptov programskega jezika c ter orodij sed in awk perl se se posebej odlikuje po razsirjenem naboru regularnih izrazov friedl zato je izjemno mocno orodje pri delu z besedili v casu tega prispevka zadnja izdaja perla nosi stevilko informacije o perlu najdemo v spletu na naslovu http www perl org perl dbi prvo razlicico vmesnika med perlom in podatkovnimi strezniki descartes in bunce je leta napisal tim bunce perl dbi database interface definira skupino postopkov spremenljivk in dogovorov ki skupaj sestavljajo enoten programerski vmesnik do razlicnih podatkovnih streznikov bunce je zacel s podporo za oracle danes pa so na voljo gonilniki database driver dbd za stevilne podatkovne streznike med drugimi adabas db empress illustra informix ingres interbase msql mysql odbc microsoft sql server oracle postgresql sybase in xbase shema povezave med perlom in zbirko podatkov slika shema povezave med perlom in zbirko podatkov slika shematicno prikazuje odnos sestavnih delov ki sestavljajo sistem perl je splosno namenski programski jezik katerega posebna odlika so mocni ukazi za delo z nizi znakov perl dbi je splosni vmesnik do zbirk podatkov ki mora biti podprt se z gonilnikom za izbrano podatkovno zbirko v nasem primeru dbd pg ta ukaze prevede v poizvedbeni ukaz strezniku postgresql slednji prevzame skrb za evidenco o razporeditvi podatkov na disku zato se programerju eno raven vise s tem ni treba ukvarjati z vmesnikom do zbirk podatkov ob ze sicer mocnih ukazih za delo z besedili postane perl se mocnejsi razsirjeno ujemanje nizov ce se povrnemo k opisu datotek po vidimo da so v njih vsebinske in skladenjske prvine precej prepletene ker je na voljo razmeroma skromni nabor prevodov bi bilo ob iskanju ujemajocega se niza potratno zaradi morebitnih manjsih skladenjskih razlik zavreci celotno vsebino prevoda program ima zato vgrajenih nekaj mehanizmov ki poskusajo v cim vecji meri lociti vsebino od oblikovnih in skladenjskih prvin in primerjati vsebino fraz male in velike crke prva skladenjska tezava je razlikovanje med malimi in velikimi crkami denimo da imamo v zbirki prevodov ze par msgid about gnome msgstr o namizju gnome ko pri prevajanju novih fraz naletimo na razlicico sporocila v izvirniku about gnome seveda zelimo da se uporabi ze obstojeci prevod fraze iz zbirke enakovredno obravnavanje velikih in malih crk samo po sebi ni tezavno vendar pa nismo zadovoljni s tem da omenjeni niz prevedemo preprosto z nizom o namizju gnome verjamemo da je avtor namenoma izbral male crke zato se poskusamo oblikovno cim bolj priblizati izvirniku ki ga prevajamo v danem primeru torej besedo izpisemo z veliko zacetnico sicer pa z malimi crkami gnome pravila ki se jih smart drzi pri obravnavanju velikih crk so naslednja ce je izvirna fraza izpisana s samimi velikimi crkami bo taksen tudi prevod ce je izvirna fraza izpisana z veliko zacetnico bo prevod tudi v izvirniku poisce vse besede ki so izpisane s samimi velikimi crkami kratice in enako izpise tudi prevod bliznjice bliznjice imenujemo kombinacije tipk s katerimi lahko hitreje dosezemo izbire v menujih navadno so v menuju oznacene bliznjice tako da je crka podcrtana izbiro ``shrani'' na primer dosezemo tako da hkrati pritisnemo tipki alt in s tezava nastopi ker namizji kde in gnome interno uporabljata v sporocilih razlicni oznaki za bliznjice kde jih oznacuje z znakom gnome pa z znakom v resnici seveda te razlike ne zelimo denimo da imamo v zbirki prevodov par msgid save msgstr shrani v tem primeru seveda zelimo da program uporabi ta prevod ko naleti na izvirni niz shrani enako seveda zelimo tudi pri tistih redkih programih namizja kde ki uporabljajo posebni nacin zapisa bliznjic v obliki shrani s tezavo smo resili tako da oba posebna znaka ob sestavljanju podatkovne zbirke nadomestimo z novim posebnim in redkim ``metaznakom'' ob prevajanju pa se ta nadomesti z enakim znakom kot je v izvirniku fraze presledki in necrke podobne tezave kot z znaki ki oznacujejo bliznjice so tudi s presledki in ostalimi oblikovnimi elementi pogosti so uvodni ali zakljucni presledki ter zakljucno dvopicje ali tropicje pri iskanju prevoda zelimo da so naslednji trije nizi pomensko enakovredni msgid search msgid search msgid search zato pred iskanjem ujemajocega niza v zbirki niz otrebimo oblikovnih oznak in primerjamo vsebino nizov zaporedne stopnje pri iskanju ujemajocega niza ponazarja slika stopnje pri iskanju ujemajocega se niza v zbirki slika stopnje pri iskanju ujemajocega se niza v zbirki drugi oblikovni elementi ki se tudi pojavljajo v frazah in za katere je treba poskrbeti so se pika vejica dvopicje podpicje vprasaj klicaj vezaj narekovaji `' oglati oklepaji ter znaka za tabulator t in novo vrstico n programski paket stevilo fraz povprecno znakov frazo skupaj znakov microsoft chat microsoft excel microsoft excel microsoft internet explorer microsoft internet information server microsoft netmeeting microsoft office microsoft office microsoft outlook microsoft outlook microsoft windows microsoft windows microsoft windows second edition microsoft word microsoft word netscape communicator caption tabela primerjava obseg sporocil v krajevno prilagojenih izdelkih podjetij microsoft in inprise netscape izkusnje ob delu primerjava tabele s tabelo pokaze da je prevedenega prostega programja se vedno dosti manj od komercialnega vseeno pa delez ni zanemarljiv prve izkusnje s programom smart so ne povsem nepricakovano razkrile da je obstojeca baza prevodov neusklajena znacilno situacijo denimo prikaze naslednji primer msgid configure keys s msgstr nastavi tipke s msgstr nastavite tipke s msgstr nastavitev tipk s msgstr prikroji tipke je na mestu velelnik v ednini ali v mnozini ce besedilo razumemo kot ukaz racunalniku je verjetno bolj na mestu velelnik v ednini eden od prevajalcev se je dilemi izognil z uporabo glagolnika in nazadnje najdemo se zanimiv prevod ki poskusa resiti tezavo da slabe pol ducata angleskih izrazov setting setup configuration profile preference prevajamo z ``nastavitev'' svojevrstnen rekord pa je dosegel prevod fraze ``case sensitive'' za katerega smo v zbirki nasli nic manj kot sedem razlicnih slovenskih prevodov v razponu od povsem napacnih do zgolj nerodnih msgid case sensitive s msgstr loci velike in male crke s msgstr obcutljiv na velikost crk s msgstr pazi na velikost crk s msgstr pomembnost velikosti crk s msgstr upostevaj velikost crk s msgstr velikost crk ni pomembna s msgstr velikost crk pomembna primer kaze se nekaj med navedenimi sedmimi prevodi ni pravzaprav nobenega res dobrega z ``razlikuj velike in male crke'' takoj posekamo vse navedeni primer je res bolj anekdoticen kot tipicen nikakor pa ni edini zaradi neenotnosti gradiva v zbirki prevodov se je pokazala potreba po nekaksnem ``kanonicnem'' seznamu prevodov rocno pregledan seznam z usklajenimi izrazi sproti dopolnjujemo uporabljamo kot zgled za nove popravke in navzkrizno primerjamo obstojece prevode nacrti za nadaljnje delo smart je ze sedaj v casu pisanja tega prispevka je njegova zadnja razlicica uporabno orodje pri prevajanju datotek po vendar pa je treba v isti sapi priznati tudi da vsi dosedanji uporabniki izvirajo iz tehnicno programerskega okolja ne pa iz prevajalskega slednji bi si morda zeleli prijaznejsi uporabniski vmesnik zato eden od nacrtov zajema tudi prilagoditev smarta za delo v tandemu s programom muli slika pri tem bi muli z bolj dodelanim uporabniskim vmesnikom prevzel vlogo celnega dela sistema smart z izvedenimi algoritmi za ujemanje pa zaledni del glavno okno programa muli slika glavno okno programa muli poleg uporabniskega vmesnika zelimo izboljsati tudi podporo za slovenscino zaenkrat program ze vkljucuje preverjanje predlogov s z in h k kosir in sod dodali pa bi radi se natancnejse preverjanje jezika pri cemer bi si lahko pomagali z rezultati projekta multext east erjavec program bi radi dopolnili s seznamom regularnih izrazov ki bi opisovali pogoste napacno ali slogovno oporecno rabljene besede ali besedne zveze za vsako navedli pojasnilo zakaj je slaba in kako jo popraviti ali izboljsati dostopnost v duhu zamisli odprtega programja je tudi program smart prosto dostopen na internetnem naslovu ftp ftp lugos si pub lugos localization smart uporabniki ga lahko z navedenega naslova prepisejo na svoj disk spreminjajo po lastnih zeljah in potrebah ter razsirjajo dalje enako velja tudi za vse ostale programe ki jih smart uporablja zakljucek iz potrebe da bi ljubiteljski prevajalci proste programske opreme poenotili tehnicno izrazje in vpeljali stalne slovenske besedne zveze prevodov za najpogostejsa sporocila programov v anglescini je nastal prosto dostopni program smart ki svetuje uporabniku na osnovi poravnanih dvojezicnih korpusov obstojecih prevodov navzlic temu da je na voljo vec tovrstnih prosto dostopnih ali placljivih orodij ima program smart to veliko prednost da je namenjen prav delu s slovenskim jezikom in zato bo mogoce vanj vgrajevati po potrebah uporabnikov in zmoznostih programerjev tiste funkcije ki se bodo ob delu pokazale za nujne ali prirocne ker je njegova izvorna koda na voljo si lahko obetamo hiter razvoj programa zahvala avtorji se za skrbno branje rokopisa in podane popravke in pripombe ki so pripomogle k njegovi razumljivosti in jasnosti zahvaljujemo dr tomazu erjavcu z ijs in anonimnim recenzentom ki so sodelovali pri pripravi konference literatura edgar f codd a relational model of data for large shared data banks communications of the acm patrick d'cruze locale tutorial ftp sunsite unc edu pub linux utils nls catalogs incoming locale tutorial txt gz alligator descartes in tim bunce programming the perl dbi o'reilly associates sebastopol ca ulrich drepper jim meyering in françois pinard gnu gettext tools version native language support library and tools free software foundation boston ma http www gnu org manual gettext ulrich drepper internationalization in the gnu project v proceedings of the first conference on freely distributable software cambridge massachussets february str free software foundation boston ma eagles evaluation of natural language processing systems final report tehnicno porocilo expert advisory group on language engineering standards http issco www unige ch projects ewg tomaz erjavec the multext east slovene lexicon v baldomir zajc ur zbornik sedme elektrotehniske in racunalniske konference erk ' september portoroz slovenija zvezek b str ieee region slovenska sekcija ieee tomaz erjavec slovensko angleski korpus elan slavisticna revija demir fatih gtranslator spletna stran http gtranslator sourceforge net jeffrey e friedl mastering regular expressions o'reilly associates sebastopol ca matthias kiefer a kbabel spletna stran http i n kde org tools kbabel matthias kiefer b kdedict spletna stran http i n kde org tools kdedict ales kosir primoz peterlin in tomaz erjavec gnusl prosto programje in slovenscina v tomaz erjavec in jerneja gros ur multi konferenca informacijska druzba is ' oktober ljubljana slovenia jezikovne tehnologije za slovenski jezik zbornik konference str institut jozef stefan ljubljana thomas lockhart ur postgresql tutorial the postgresql development team http www postgresql org docs tutorial andreas persenius gnopo spletni vmesnik do arhiva cvs http cvs gnome org bonsai rview cgi cvsroot cvs gnome di r gnopo detlef reichl muli multipliciter lingua spletna stran http muli sourceforge net andrea rizzi ktranslator spletna stran http www geocities com bilibao richard m stallman the gnu manifesto dr dobb's journal of software tools michael stonebraker in lawrence a rowe the design of postgres v carlo zaniolo ur proceedings of the acm sigmod international conference on management of data washington d c may str acm press michael stonebraker eugene wong peter kreps in gerald held the design and implementation of ingres acm transactions on database systems michael stonebraker lawrence a rowe in michael hirohama the implementation of postgres ieee transactions on knowledge and data engineering andraz tori smart user manual spela vintar a racunalniska orodja za prevajanje mostovi spela vintar b racunalniske tehnologije za prevajanje uporabna informatika larry wall tom christiansen in jon orwant programming perl izd o'reilly associates sebastopol ca lynn e webb advantages and disadvantages of translation memory a cost benefit analysis magistrsko delo monterey institute of international studies monterey ca http www webbsnet com translation thesis html andrew yu in jolly chen the postgresql user manual the postgres group university of california berkeley ca napisano p peterlin zadnja sprememba date author peterlin