www.wikidata.uk-ua.nina.az
U Vikipediyi ye statti pro inshi znachennya cogo termina Oberon Oberon mova programuvannya visokogo rivnya rozroblena Niklausom Virtom Dlya vikonannya program ciyeyu movoyu prinaznachena odnojmenna operacijna sistema avtori N Virt i Yurg Gutkneht Jurg Gutknecht OberonParadigma dekilka imperativna strukturovana modulnaData poyavi 1986Tvorci Niklaus VirtRozrobnik Niklaus VirtSistema tipizaciyi statichna silna Pid vplivom vid Modula 2 PascalVplinula na Modula 2 Oberon 2 ZonnonLicenziya Licenziya BSDVebsajt projectoberon net Zmist 1 Sistemi j seredovisha 2 Istoriya movi 3 Mova Oberon 3 1 Novovvedennya 3 2 Sproshennya sintaksisu 3 3 Sintaksis u RBNF 3 4 Osnovni elementi 4 Koncepciyi programuvannya 5 Vpliv Oberona na inshi movi 6 Versiyi movi 7 Movi rodini Oberon 8 Cikavi fakti 9 Primitki 10 Literatura 11 Posilannya 12 Div takozhSistemi j seredovisha RedaguvatiProgrami sho napisani movoyu programuvannya Oberon vimagayut pevnoyi pidtrimki pid chas vikonannya yim neobhidnij dinamichnij zavantazhuvach i centralizovano vikonuvanij avtomatichnij zbirach smittya Dlya cogo programam sho napisani movoyu Oberon potribne specialne operacijne seredovishe Zvichajnim sposobom jogo realizaciyi ye dodavannya v sistemu naboru bibliotek sho realizuyut neobhidni komponenti Zagalom kazhuchi operacijnomu seredovishu zovsim ne obov yazkovo potribna okrema operacijna sistema vono samo po sobi mozhe yavlyati soboyu operacijnu sistemu Takimi ye sistemi Native Oberon dlya pervisnogo Oberona j Bluebottle dlya Active Oberon U cej chas isnuyut kompilyatori Oberona v bajt kod Virtualnoyi Java mashini i CLI dlya virtualnoyi mashini NET Operacijnimi sistemami j seredovishami dlya vikonannya program na movah rodini Oberon sho rozvilisya z pervisnoyi sistemi Oberon ye ETH Oberon BlackBox Component Builder WinOberon Bluebottle tosho Na bazi Oberona buli rozrobleni proekti Oberon 0 Oberon X ta inshi Prostota Oberona j nayavnist vihidnih tekstiv originalnoyi realizaciyi dozvolyayut legko adaptuvati jogo dlya specialnih klasiv zavdan Ale vsi ci Oberoni duzhe blizki mizh soboyu oskilki j pervisnij Oberon duzhe prostij Istoriya movi RedaguvatiOsnovoyu dlya Oberona posluzhila mova Modula 2 sho virosla z Paskalya za slovami Virta 1 spochatku sistemu hotili pisati bezposeredno na Moduli ale prijshli do visnovku pro neobhidnist yiyi dorobki j skorochennya sho j privelo do poyavi Oberona Metoyu proektu Project Oberon Niklausa Virta i Yurga Gutknehta v 1986 1989 rokah 2 bulo stvorennya z nulya dostupnoyi dlya rozglyadu j nadijnoyi operacijnoyi sistemi dlya odnokoristuvalnickoyi robochoyi stanciyi Dlya realizaciyi cogo proektu v 1988 roci Niklausom Virtom bula sproektovana mova programuvannya visokogo rivnya zagalnogo priznachennya takozh nazvana Oberonom 3 U 1989 roci v ETH bula vipushena persha realizaciya movi Oberon dlya procesoriv rodini NS32000 Vona bula stvorena yak komponent operacijnogo seredovisha Oberon Cej kompilyator vimagaye menshe 50 Kbajt pam yati skladayetsya z 6 moduliv zagalnim obsyagom blizko 4000 ryadkiv i sam sebe kompilyuye za 15 sekund na komp yuteri iz procesorom NS32532 taktova chastota 25 MGc Mova Oberon RedaguvatiNovovvedennya Redaguvati Mova zberegla osnovni risi sintaksisu Moduli j bula ob yektnim rozshirennyam Ce dozvolilo vidmovitisya vid mehanizmu variantnih zapisiv Moduli sho ye vidstupom vid pervisnoyi strogoyi statichnoyi tipizaciyi sho dalo mozhlivist zaprovaditi mehanizm avtomatichnogo keruvannya pam yattyu zbirannya smittya z movi viklyuchena mozhlivist zvilnennya dinamichno vidilenoyi pam yati za dopomogoyu osoblivogo operatora a zamist nogo same seredovishe vikonannya mistit modul sho povertaye nevikoristovuvanu pam yat sistemi Avtomatichne keruvannya pam yattyu ye zasobom pidvishennya nadijnosti program iz dinamichnimi strukturami danih tomu sho viklyuchaye lyudski pomilki vlastivi napriklad takim movam yak S C Sproshennya sintaksisu Redaguvati Shob dosyagti maksimalnoyi nadijnosti ta produktivnosti translyaciyi bulo zdijsneno znachne sproshennya movi za rahunok vidmovi vid zasobiv yaki bulo viznano nepotribnimi vihodyachi z dosvidu rozrobki realizaciyi ta ekspluataciyi inshih mov abo uskladnyuvali kompilyator bez nalezhnogo vipravdannya z poglyadu produktivnosti abo buli zanadto skladnimi abi peredati v zovnishni biblioteki chi pogano poyednuvalisya z mehanizmami modulnosti j avtomatichnogo keruvannya pam yattyu zapisi z variantami perechislimi tipi tipi diapazoni mnozhini zagalnogo vidu bezznakovij cilij tip lokalni moduli moduli viznachen spiski eksportu operator for kolishnij variant operatora with osoblivij sintaksis viznachennya golovnoyi programi Rudimentarni zasobi pidtrimki paralelnogo programuvannya sho buli v Moduli 2 ne vvijshli do movi oskilki vona priznachalasya dlya odnokoristuvackoyi operacijnoyi sistemi Z metoyu sproshennya vidmovilisya vid obrobki vinyatkiv Bulo sprosheno opis masiviv indeksi masiviv mozhut buti tilki cilimi chislami i zavzhdi pochinayutsya z nulya podibno do movi C obmezheno vikoristannya vkazivnikiv mozhut isnuvati vkazivniki lishe na zapisi ta masivi u spiskah importu vkazuyetsya tilki importovanij modul a pri vikoristanni importovanih imen potribna obov yazkova kvalifikaciya yavne zaznachennya imeni modulya eksportera U statti Vid Moduli do Oberona 1 Virt dokladno prokomentuvav prichini viluchennya kozhnogo z elementiv Z mirkuvan dostatnogo minimumu do movi ne bulo vklyucheno sintaksichnogo ponyattya metodiv procedur i funkcij sho pov yazani z tipom tomu sho cej mehanizm u najzagalnishomu viglyadi mozhna legko zmodelyuvati stvoryuyuchi v ob yektah zapisah u movi Oberon polya procedurnogo tipu j nadayuchi yim znachennya procedur sho vidpovidayut metodam Takim chinom v Oberoni minimalnimi zasobami pidtrimuyetsya ob yektno oriyentovane programuvannya dlya sproshennya j priskorennya procesu translyaciyi kodu Zavdyaki vnesenim zminam Oberon stav sintaksichno prostishim Opis jogo sintaksisu vmistivsya na odnij storinci povnij opis movi maye blizko 20 storinok sho vdvichi menshe za opis Moduli 2 Oberon ye yaksho ne minimalnoyu to u bud yakomu razi odniyeyu z najmenshih za obsyagom universalnih mov programuvannya visokogo rivnya Sintaksis u RBNF Redaguvati Sintaksis Oberona 2 viriznyayetsya kompaktnistyu Vin viznachenij u nastupnih 33 rechennyah RBNF dayetsya za H Mesenbek N Virt 1996 pre style overflow x auto Modul MODULE ident SpisokImportu PoslOgolosh BEGIN PoslOperatoriv END ident SpisokImportu IMPORT ident ident ident ident PoslOgolosh CONST OgoloshKonst TYPE OgoloshTipu VAR OgoloshZmin OgoloshProc ViperedzhOgol OgoloshKonst IdentOzn KonstViraz OgoloshTipu IdentOzn Tip OgoloshZmin SpisokIdent Tip OgoloshProc PROCEDURE Prijmach IdentOzn FormalniParam PoslOgolosh BEGIN PoslOperatoriv END ident ViperedzhOgol PROCEDURE Prijmach IdentOzn FormalniParam FormalniParam SekciyaFP SekciyaFP UtochnIdent SekciyaFP VAR ident ident Tip Prijmach VAR ident ident Tip UtochnIdent ARRAY KonstViraz KonstViraz OF Tip RECORD UtochnIdent SpisokPoliv SpisokPoliv END POINTER TO Tip PROCEDURE FormalniParam SpisokPoliv SpisokIdent Tip PoslOperatoriv Operator Operator Operator Poznachennya Viraz Poznachennya SpisokViraziv IF Viraz THEN PoslOperatoriv ELSIF Viraz THEN PoslOperatoriv ELSE PoslOperatoriv END CASE Viraz OF Variant Variant ELSE PoslOperatoriv END WHILE Viraz DO PoslOperatoriv END REPEAT PoslOperatoriv UNTIL Viraz FOR ident Viraz TO Viraz BY KonstViraz DO PoslOperatoriv END LOOP PoslOperatoriv END WITH Ohorona DO PoslOperatoriv Ohorona DO PoslOperatoriv ELSE PoslOperatoriv END EXIT RETURN Viraz Variant MitkiVarianta MitkiVarianta PoslOperatoriv MitkiVarianta KonstViraz KonstViraz Ohorona UtochnIdent UtochnIdent KonstViraz Viraz Viraz ProstijViraz Vidnoshennya ProstijViraz ProstijViraz Dodanok OperDodav Dodanok Dodanok Mnozhnik OperMnozh Mnozhnik Mnozhnik Poznachennya SpisokViraziv chislo simvol ryadok NIL Mnozhina Viraz Mnozhnik Mnozhina Element Element Element Viraz Viraz Vidnoshennya lt lt gt gt IN IS OperDodav OR OperMnozh DIV MOD amp Poznachennya UtochnIdent ident SpisokViraziv UtochnIdent SpisokViraziv Viraz Viraz SpisokIdent IdentOzn IdentOzn UtochnIdent ident ident IdentOzn ident pre Osnovni elementi Redaguvati Programa na Oberoni yavlyaye soboyu nabir moduliv U zagalnomu vidi modul maye viglyad MODULE Im ya IMPORT SpisokImportu Oznachennya BEGIN Operatori END Im ya Spisok importu viznachaye z yakih moduliv budut importovani zovnishni imena Viznachennya vklyuchayut viznachennya tipiv procedur funkcij zminnih konstant Pri comu viznachennya imen poznachenih zirochkoyu eksportuyutsya danim modulem tobto budut vidni inshim modulyam sho importuyut danij V Oberoni 2 dopustimo takozh poznachati imena znakom minus u comu vipadku voni eksportuyutsya v rezhimi tilki dlya chitannya Tilo modulya vikonuyetsya pri jogo zavantazhenni U Komponentnomu Paskali vseredini tila modulya u rozdili BEGIN END poyavilasya mozhlivist dodati sekciyu CLOSE BEGIN Operatori CLOSE Operatori END Im ya Tut operatori roztashovani mizh BEGIN i CLOSE vikonuyutsya pri zavantazhenni modulya a operatori roztashovani mizh CLOSE i END pri vivantazhenni jogo z pam yati Take rozshirennya bulo priznane korisnim dlya komponentnih program yaki zavantazhuyut i vivantazhuyut moduli dinamichno Stvoryuvani programistom tipi danih obmezheni nastupnim naborom tipi masivi ARRAY tipi zapisu RECORD procedurni tipi PROCEDURE tipi vkazivniki POINTER Vkazivnik mozhe vkazuvati tilki na masiv abo zapis Sintaksis vnutrishnoyi chastini programi dosit tradicijnij i prostij Mova pidtrimuye tradicijnij nabir konstrukcij umovnij operator IF operator viboru CASE cikli z peredumovoyu WHILE z postumovoyu REPEAT UNTIL bezumovnij LOOP z lichilnikom FOR Podibno do Moduli 2 veliki j mali literi v identifikatorah riznyatsya usi zarezervovani slova pishutsya velikimi literami Usi movni konstrukciyi krim ciklu REPEAT UNTIL zakinchuyutsya klyuchovim slovom END i dopuskayut roztashuvannya useredini dekilkoh operatoriv bez vikoristannya skladenogo operatora BEGIN END Prirodno yak i v Moduli 2 nemaye bezumovnih perehodiv Paradigma ob yektno oriyentovanogo programuvannya pidtrimuyetsya mehanizmom rozshirenih zapisiv u movi nemaye okremogo klyuchovogo slova dlya opisu klasiv takih yak class abo object prijnyato sho zvichajnogo ponyattya tip zapis cilkom dostatno Po suti kozhnij tip zapis ce opis klasu a polya zapisu ce dani chleni klasu U vihidnomu Oberoni metodiv procedur i funkcij pov yazanih iz klasom nemaye vzagali Mehanizm metodiv mozhe buti vikoristanij shlyahom ogoloshennya v zapisi poliv procedurnogo tipu yakim pri stvorenni ekzemplyara klasu nadayutsya znachennya konkretnih procedur Viklik takih procedur provaditsya tradicijnim sposobom zvertannya do polya zapisu za umovchannyam procedura ne znaye pro ekzemplyar klasu dlya yakogo vona bula viklikana nemaye mehanizmu analogichnogo this v C abo Java abo Self v Object Pascal i yaksho taki dani yij neobhidni to posilannya na ekzemplyar povinne buti peredane yavno napriklad cherez parametr Vidsutnist yavno opisuvanih metodiv bula odniyeyu iz vlastivostej vihidnogo Oberona sho viklikala kritiku prizvichayenih do tradicijnih gibridnih mov programistiv Z inshogo boku proponovanij Oberonom mehanizm dozvolyaye realizuvati vse sho realizovano tradicijnimi zasobami mov iz metodami i navit bilshe togo v Oberoni kozhen ekzemplyar klasu mozhe mati vlasnij variant metodu znachennya polya procedurnogo tipu todi yak pri opisi metodiv yak chastin klasu vsi ekzemplyari pracyuyut z odnim variantom metodu V Oberoni 2 metodi buli vse taki vvedeni Metodi opisuyutsya okremo vid tipu zapis iz zaznachennyam tipu z yakim voni pov yazani Novij tip zapis mozhe buti ogoloshenij yak rozshirennya isnuyuchogo U comu razi tip sho rozshiryuyetsya vkazuyetsya v opisi zapisu v duzhkah pislya klyuchovogo slova RECORD Rozshirenij tip avtomatichno otrimuye vsi polya rozshiryuvanogo tipu j v Oberoni 2 pov yazuyetsya z usima procedurami zv yazanimi z rozshiryuvanim tipom Proceduri pov yazani z novim tipom mozhut mati tu zh signaturu sho j proceduri pov yazani z rozshiryuvanim tipom u takij sposib zabezpechuyetsya pereviznachennya metodiv u porodzhenih tipah U Komponentnomu Paskali z metoyu povnishogo kontrolyu za rozshiryuvanistyu tipi zapisu za umovchannyam ne ye rozshiryuvanimi a metodi ne mozhut buti pereviznacheni Shob dozvoliti rozshirennya zapisiv i pereviznachennya metodiv vikoristovuyutsya specialno vvedeni klyuchovi slova EXTENSIBLE ABSTRACT LIMITED EMPTY Priklad programi Hello World movoyu Oberon Koncepciyi programuvannya RedaguvatiKomponentne programuvannyaOberon nacilenij na komponentno oriyentovanu rozrobku programnogo zabezpechennya 4 Inkapsulyaciya pidtrimuyetsya vinyatkovo na rivni modulya usi tipi ogolosheni vseredini modulya odin dlya odnogo absolyutno prozori Z inshih moduliv dostupno te sho ogoloshene pri viznachenni yak eksportovane Polimorfizm zabezpechuyetsya za rahunok mehanizmu metodiv i procedurni polya v Oberoni i metodi v Oberoni 2 povodyatsya yak virtualni u terminologiyi bilshosti gibridnih ob yektno oriyentovanih mov a takozh zavdyaki rozshirenij konstrukciyi WITH sho dozvolyaye vikonuvati rizni grupi operatoriv zalezhno vid togo do yakogo z rozshirenih tipiv vidnositsya yiyi argument U movi vidsutnij specialnij mehanizm konstruktoriv Rekomendovanim metodom stvorennya j inicializaciyi ob yektiv ye opis porodzhuyuchih moduliv i procedur u tradicijnij terminologiyi OOP factory Programa v takij tehnologiyi ye naborom vidnosno samostijnih komponentiv u comu razi moduliv sho mayut prihovanu vid zovnishnogo svitu vnutrishnyu strukturu j chitko viznachenij interfejs Moduli mozhut zavantazhuvatisya j vivantazhuvatisya dinamichno pid chas roboti programi sistema nadaye rozvinuti zasobi kontrolyu tipiv pid chas vikonannya yaki dozvolyayut pisati universalni algoritmi obrobki danih sho ne zalezhat vid konkretnih tipiv cih danih napriklad biblioteka dlya roboti iz SKBD mozhe nadavati metodi sho zapisuyut rezultat zapitu z bazi v zapis dovilnoyi strukturi yaksho nabir i tipi poliv cogo zapisu vidpovidayut naboru j tipam poliv u BD U komponentnij paradigmi vvazhayetsya nevdalim arhitekturne rishennya pov yazane iz shirokim vikoristannyam uspadkuvannya realizacij vid tipiv ogoloshenih v inshomu komponenti oskilki ce prizvodit do yavisha vidomogo yak krihkist bazovogo tipu pislya togo yak vid bazovogo tipu porodzhena velika kilkist tipiv nashadkiv pri comu chastina z nih mozhe buti navit nevidoma rozrobniku bazovogo tipu bud yaki zmini v realizaciyi bazovogo tipu stayut ukraj rizikovanimi tomu sho voni mozhut neperedbachenim chinom vidobrazitisya na tipah nashadkah Vidomo sho odniyeyu iz problem zastosuvannya ob yektno oriyentovanogo programuvannya v sistemnomu programuvanni ye neobhidnist mati grupi malenkih klasiv yaki mogli b vzayemodiyati bez dodatkovih nakladnih vitrat V Oberoni ciyeyi problemi nemaye vsi tipi sho viznacheni v odnomu moduli bachat odin odnogo a problem z nadijnistyu ce ne stvoryuye tomu sho modul vse taki rozroblyayetsya testuyetsya j suprovodzhuyetsya yak yedine cile Tipova sistema rozroblena na Oberoni ye naborom moduliv iz procedurnimi interfejsami cherez yaki moduli obminyuyutsya danimi u tomu chisli j ob yektami Pri comu vsi zasobi inkapsulyaciyi diyut tilki v mizhmodulnij vzayemodiyi sho robit zruchnim sistemne programuvannya z vikoristannyam ob yektiv Ob yektno oriyentovane programuvannyaZasobi ob yektnogo programuvannya interpretuyutsya v Oberoni yak prirodnij rozvitok zasobiv roboti iz zapisami v modulnij sistemi tochnishe yak tehnichnij instrumentarij dlya virishennya konkretnogo arhitekturnogo zavdannya zabezpechiti efektivnij podil praci mizh riznimi modulyami pri roboti z dinamichnimi tipami j strukturami danih napriklad robota iz vkazivnikami v spisku mozhe buti prihovana razom iz vidpovidnimi polyami v odnomu moduli a viznachennya j robota z konkretnim napovnennyam elementiv spisku zadavatisya v inshomu abo chastishe inshih U comu sensi tehnologiya ob yektnogo programuvannya v Oberoni pidporyadkovana koncepciyi modulnosti vona tut ye skorishe zasobom opisu danih nizh zasobom pobudovi arhitekturi zastosunka v cilomu Vpliv Oberona na inshi movi RedaguvatiZa tverdzhennyam Virta 5 rozrobniki movi Java za kilka rokiv do yiyi stvorennya vivchili vihidni kodi Oberona j zokrema vihidni kodi oberonivskih zbirachiv smittya Potim voni zipsuvali Oberon sintaksisom Si j nazvali otrimane slovom Java Hocha vid usnogo vistupu ne mozhna vimagati absolyutnoyi tochnosti formulyuvan ale u vsyakomu razi bezsumnivna podibnist ideologij Oberona j Java pragnennya do minimalizmu j strogoyi tipizaciyi obmezhennya mnozhinnogo uspadkuvannya avtomatichne keruvannya pam yattyu kazhe pro te sho tut maye misce pevnij konsensus shodo togo yaki zasobi povinni skladati yadro suchasnoyi movi programuvannya zagalnogo priznachennya Ochevidno j te sho iz dvoh mov Oberon sproektovanij nabagato retelnishe U rodinu mov Oberon vhodyat takozh Oberon 07 Oberon 2 Component Pascal Komponentnij Paskal Active Oberon OberonScript tosho Versiyi movi RedaguvatiVihidna versiya Oberon klasichnij Oberon najkorotsha z najmenshoyu kilkistyu klyuchovih sliv i sintaksichnih konstrukcij Vona bula vikoristana yak baza dlya stvorennya rodini mov kozhna z yakih rozshiryuye klasichnu movu v yakomu nebud napryamku abo vidriznyayetsya vid neyi deyakimi detalyami Oberon 2U 1992 roci Niklaus Virt i jogo uchen Hanspeter Mesenbek Hanspeter Moessenboek nini profesor Universitetu im Joganna Keplera v Linci opublikuvali opis dopovnenogo varianta Oberona sho otrimav nazvu Oberon 2 Vin ye utochnenoyu versiyeyu klasichnogo Oberona Dopovnennya vneseni v Oberon 2 oformleni duzhe ekonomno j polyagayut u nastupnomu dodani proceduri sho pov yazani z tipom i dopuskayut pereviznachennya dlya porodzhenih tipiv nablizhenij analog virtualnih metodiv v inshih ob yektno oriyentovanih movah u movu povernuto operator FOR ciklu iz krokom dodana mozhlivist eksportu opisiv u rezhimi tilki dlya chitannya 6 7 Cikavo sho nezvazhayuchi na rozshirennya movi obsyag formalnogo opisu sintaksisu Oberona 2 menshij nizh obsyag opisu klasichnogo Oberona Ce stalosya v rezultati optimizaciyi opisu sintaksisu Isnuye optimizuvalnij kompilyator XDS 8 dlya Oberon 2 Ye takozh kompilyator movi Oberon 2 9 u bajt kod virtualnoyi mashini Yava Java Virtual Machine Rozroblenij S Sverdlovim Vologda VDPU v 1998 roci kompilyator pracyuye v Windows 95 NT Generuye fajli klasiv class yaki mozhut zavantazhuvatisya j vikonuvatisya virtualnoyu mashinoyu movi Yava Dozvolyaye stvoryuvati zastosunki j apleti Mistit standartni dlya Oberona vimogi biblioteki a takozh interfejsi dlya Java API ETH OberonETH Oberon realizaciyi yakogo ye dlya bagatoh obchislyuvalnih platform Komponentnij Paskal Component Pascal Oberon 2 vidrazu pislya opublikuvannya v 1992 roci rozglyadavsya yak kandidat na rol standartu movi konferenciya Oakwood Conference Croydon 1993 ale praktichnij dosvid nakopichenij pri stvorenni velikih programnih kompleksiv viyaviv deyaki slabosti novovveden i bazhanist podalshih utochnen sho zajvij raz pidkreslyuye mudrist konservatizmu viyavlenogo Virtom u viznachenni klasichnogo Oberona Ci utochnennya buli pochati u varianti Oberona 2 nazvanomu Komponentnij Paskal i opublikovanomu v 1999 roci kompaniyeyu Oberon microsystems 10 utvorenoyi v 1992 roci uchnyami Virta sam Virt stav chlenom radi direktoriv Yak i pri perehodi vid Oberona do Oberona 2 ci utochnennya zrobleni maksimalno ekonomno 11 Zokrema teper mova povnistyu pidtrimuye metodologiyu komponentno oriyentovanogo programuvannya Zavdyaki ostannij obstavini Komponentnij Paskal teper ye mabut najdoskonalishim sered pryamih nashadkiv klasichnogo Oberona Odnak vin mozhe buti skorochenij ne tilki do pidmnozhini ekvivalentnoyi pervisnomu Oberonu ale j do inshoyi povnocinnoyi minimalistichnoyi pidmnozhini u yakij spadkuvannya j pereviznachennya metodiv dopuskayetsya tilki dlya chisto interfejsnih tipiv i metodiv viznachenih z atributom ABSTRACT Cya obstavina viyavlyaye desho promizhnij harakter Oberona 2 U Komponentnij Paskal u porivnyanni z Oberonom 2 dodani zasobi sho dozvolyayut rozrobnikovi povnistyu kontrolyuvati rozshirennya eksportovanih tipiv i pereviznachennya metodiv atributi EXTENSIBLE ABSTRACT NEW EMPTY a takozh mozhlivist obmezhenogo eksportu metodu tilki dlya realizaciyi Dodano blok zavershennya tila modulya klyuchove slovo CLOSE i napered viznachenij porozhnij metod FINALIZE Sistema osnovnih elementarnih tipiv privedena u vidpovidnist iz tipami Java Uvedeno neyavnij ryadkovij tip Kompaniya Oberon Microsystems sho viznachila Komponentnij Paskal vipustila takozh biblioteku BlackBox Component Framework i seredovishe vizualnogo programuvannya BlackBox Component Builder 12 neveliki za rozmirom i nevimoglivi do resursiv cilkom pobudovani na Komponentnomu Paskali Zgodom BlackBox buv rozshirenij seredovishem kros programuvannya Denia sho dozvolyaye vikonuvati kros programuvannya dlya OSRV JBed yaka tezh povnistyu realizovana na Komponentnomu Paskali JBed priznachena dlya vbudovanih sistem sho pracyuyut u realnomu chasi napriklad dlya promislovih avtomativ Oberon SA i Oberon 07Oberon SA ce versiya movi Oberon rozroblena N Virtom dlya procesora Strong ARM vikoristovuvanogo v bezpilotnomu vertoloti Na osnovi dosvidu rozrobki Oberon SA N Virt u 2007 roci pidgotuvav zmini j dopovnennya do klasichnogo Oberona 13 14 dlya strogishoyi pidtrimki strukturnogo programuvannya nizh napriklad v Oberon 2 abo Komponentnomu Paskali Nova versiya movi otrimala nazvu Oberon 07 15 Ale vidnosno pidtrimki ob yektno oriyentovanogo programuvannya mova Oberon 07 ne jde za Oberonom 2 a prodovzhuye minimalistichnu liniyu klasichnogo Oberona vklyuchayuchi vidsutnist pidtrimki procedur sho priv yazani do tipiv zapisiv Oberon 07 maye taki osnovni vidminnosti vid klasichnogo Oberona u cikli WHILE dozvoleni kilka ohoronyuvanih gilok ELSIF DO Tim samim zabezpechena povna yavna pidtrimka ciklu Dejkstri 16 Ranishe cikl Dejkstri modelyuvavsya za dopomogoyu ciklu LOOP vidpovidno viklyuchenij nestrukturovanij cikl LOOP razom z operatorom EXIT vihid iz ciklu u proceduri teper mozhe buti tilki odna tochka vihodu fiksovana naprikinci tila proceduri RETURN po suti perestav buti operatorom peretvorivshis u taku zh sintaksichnu chastinu opisu proceduri yak klyuchove slovo PROCEDURE i t d dodanij operator ciklu FOR viklyuchene neyavne zvedennya tipu INTEGER do REAL i tipiv iz riznoyu rozryadnistyu odin do odnogo dozvoleni posilannya tilki na zapisi utochnene pravilo importu eksportu eksport zminnih dozvolenij tilki dlya chitannya specifikator eksportu odin utochneni tipi danih CHAR pidtrimuye mnozhinu Latin 1 INTEGER 2 31 2 31 1 REAL i LONGREAL IEEE Standard 32 i 64 biti vidpovidno SET mnozhinu cilih mizh 0 i 31 Avstralijska kompaniya CFB Software m Brisben pri Universiteti shtatu Kvinslend rozrobila IDE Astrobe 17 dlya movi Oberon 07 i sintaksichni diagrami movi Oberon 07 18 Movi rodini Oberon RedaguvatiActive Oberon ZonnonCi movi vzhe mozhna nazivati ne rozshirennyami chi versiyami Oberona a samostijnimi movami U nih istotno rozshireno sintaksis uvedeno konstrukciyi dlya opisu klasichnih vlastivostej property z kontrolem chitannya zapisu chislovi tipi z rozmirom sho zadayetsya u bitah Uvedeno pidtrimku aktivnih ob yektiv sho obminyuyutsya povidomlennyami u formati obumovlenomu RBNF opisom obrobka vinyatkiv GlagolU Rosiyi bula rozroblena mova Glagol strukturno duzhe blizka do Oberona 2 Golovna yiyi vidminnist polyagaye u vikoristanni rosijskih sluzhbovih sliv 19 20 Krim cogo mova maye she ryad vidminnostej vid Oberona 2 vilucheni metodi funkciyi ta proceduri sho pov yazani z tipom ne vikoristovuyutsya psevdonimi v ogoloshennyah importu moduliv dodana umovna kompilyaciya vihidnih tekstiv dodana mozhlivist bezposeredno vkazuvati shlyah do vikoristovuvanih moduliv dodana specialna poznachka dlya golovnogo modulya programi sho zapuskayetsya dodanij vbudovanij tip iterator dlya priskorennya poslidovnogo dostupu do masivu zmineni poznachki eksportu dlya zminnih konstant i procedur a takozh sposib ukazannya parametriv zminnih zminenij sintaksis operatora WITH DLYa zaboronena peredacha cherez parametri procedur masiviv i zapisiv zmineni rozmiri deyakih tipiv danih zminenij nabir ubudovanih procedur i sklad sistemnih moduliv Mova pidtrimuye yunikod Realizovano kompilyator nazivanij peretvoryuvachem dlya platform Windows i PocketPC a takozh seredovishe rozrobki takozh dlya Windows Cikavi fakti RedaguvatiZa pidrahunkami opublikovanimi v statti Sergiya Sverdlova Arifmetika sintaksisu liniya Virta yak vin yiyi nazvav liniya sho vklyuchaye Paskal Modulu 2 Oberon i Oberon 2 ce yedinij priklad genetichnoyi liniyi mov nashadkiv Algolu 60 u yakij skladnist movi viznachena z neobhidnimi zasterezhennyami yak kilkist leksem u yiyi opisi stabilno znizhuvalasya j u cej chas viyavlyayetsya nizhchoyu nizh u zagalnogo prabatka Algolu 60 Usi movi liniyi Virta prostishi za Algol 60 i kozhna nastupna mova v cij liniyi prostisha za poperednyu U toj zhe chas Ada bilsh nizh udvichi skladnisha za svogo poperednika Paskalya C priblizno v 1 7 raza skladnishij za Si a v linijci Paskal Turbo Paskal riznih versij Object Pascal skladnist eksponencialno zrostaye vid versiyi do versiyi Epigrafom do opisu originalnogo Oberona bula obrana fraza Ejnshtejna Robi nastilki prosto naskilki mozhlivo ale ne prostishe cogo V opisi Oberona 2 cogo epigrafa nemaye Primitki Redaguvati a b N Virt Vid Moduli do Oberona Arhiv originalu za 19 veresnya 2011 Procitovano 18 serpnya 2010 N Wirth and J Gutknecht Project Oberon Addison Wesley 1992 N Wirth The Programming Language Oberon Software Practice and Experience Vol 18 No 7 p 671 690 C Szyperski Component Software Beyond Object Oriented Programming Addison Wesley 1998 Lekciya N Virta v Nizhnogorodskomu derzhavnomu universiteti im M I Lobachevskogo Mova programuvannya Oberon 2 Arhivovano 31 lipnya 2011 u Wayback Machine H Messenbek N Virt A Description of the Oberon 2 Language Paul Floyd angl XDS Family of Products Arhiv originalu za 23 serpnya 2011 Procitovano 18 serpnya 2010 Kompilyator Oberon 2 u bajt kod virtualnoyi mashini Yava Java Virtual Machine Arhiv originalu za 21 serpnya 2010 Procitovano 18 serpnya 2010 Oberon microsystems AG Povidomlennya pro movu Komponentnij Paskal BlackBox Component Builder Arhiv originalu za 18 grudnya 2019 Procitovano 18 serpnya 2010 Difference between Oberon 07 and Oberon Arhiv originalu za 26 travnya 2011 Procitovano 26 travnya 2011 Oberon at a glance Arhiv originalu za 6 sichnya 2012 Procitovano 6 sichnya 2012 The Programming Language Oberon rev 1 12 2007 Arhiv originalu za 19 04 2009 Procitovano 19 04 2009 E Dejkstra Disciplina programuvannya Mir Moskva 1978 IDE Astrobe dlya movi Oberon 07 Sintaksichni diagrami movi Oberon 07 nedostupne posilannya z chervnya 2019 Rozrobki na Glagoli Arhiv originalu za 21 serpnya 2011 Procitovano 18 serpnya 2010 glagol nad ru Oficijnij sajt movi Glagol Arhiv originalu za 21 serpnya 2011 Procitovano 18 serpnya 2010 Literatura RedaguvatiSverdlov S Z Movi programuvannya j metodi translyaciyi Piter 2007 ISBN 978 5 469 00378 6 ros dali anglijskoyu movoyuMartin Reiser Niklaus Wirth Programming in Oberon steps beyond Pascal and Modula NY ACM Press 1992 ISBN 0 201 56543 9 22Mb N Wirth Algorithms and Data Structures Oberon Version 1 2 Mb N Wirth J Gutknecht Project Oberon The Design of an Operating System and Compiler 4 2Mb PDF N Wirth The Programming Language Oberon nedostupne posilannya z chervnya 2019 91Kb N Wirth Programming in Oberon A derivative of Programming in Modula 2 400KbPosilannya RedaguvatiETH Oberon angl Mova Oberon Korotkij putivnik Ruslan Bogatirov Mir PK zhovten 2005 ros Mesenbek N Virt Mova programuvannya Oberon 2 Institut komp yuternih sistem ETH Cyurih 1996 ros pdf nedostupne posilannya z kvitnya 2019 ros Mova programuvannya Oberon pershij rosijskij resurs 1998 ros Portal OberonCore ru ros Portal pro OS A2 i movu Active Oberon ros Movi programuvannya j tehnologiyi Oberon perspektivi dlya industriyi ta osviti Orlovskij DU materiali sekciyi seminaru 30 bereznya 2006 r ros Pidgotovka navchalnih posibnikiv rosijskoyu movoyu ros Div takozh RedaguvatiPascal Komponentnij Paskal Otrimano z https uk wikipedia org w index php title Oberon mova programuvannya amp oldid 38066735