www.wikidata.uk-ua.nina.az
Scheme multiparadigmova mova programuvannya pidtrimuye funkcionalnu ta procedurnu paradigmi programuvannya Slovnik movi mozhna rozshiryuvati zasobami samoyi movi Isnuyut rozshirennya yaki dodayut pidtrimku ob yektno oriyentovanoyi deklarativnoyi i inshih paradigm programuvannya Ye dialektom movi programuvannya Lisp SchemeParadigma dekilkaData poyavi 1970 tiTvorci Gaj Stil ta Dzherald SassmenOstannij relizSistema tipizaciyi suvora dinamichnaOsnovni realizaciyi PLT Scheme MIT GNU Scheme Scheme 48 Chicken Gambit Guile Bigloo Chez Scheme STk STklos Larceny SCM KawaDialekti TPid vplivom vid Lisp AlgolVplinula na Common Lisp JavaScript Ruby DylanZvichajni rozshirennya fajliv scm abo ssVebsajt scheme reports org Scheme u Vikishovishi Zmist 1 Istoriya stvorennya 2 Stislij opis 3 Prikladi program 4 Interpretatori ta kompilyatori 5 Zasobi rozrobki 6 Dzherela 7 Literatura 8 Div takozh 9 PosilannyaIstoriya stvorennya RedaguvatiPershij opis Scheme napisano v 1975 roci Tvorcyami movi ye Gaj Stil angl Guy L Steele ta Dzherald Sassmen angl Gerald Jay Sussman z Massachusetskogo tehnologichnogo institutu V 1981 ta 1982 rokah pochalis tri riznih proekti po vikoristannyu Scheme dlya navchalnogo procesu v universitetah SShA Mova programuvannya Scheme viznachayetsya dvoma standartami standartom de yure v redaciyi IEEE ta standartom de fakto Potochna versiya opisannya standartu de fakto maye nazvu Revised 5 Report on the Algorithmic Language Scheme 1 28 serpnya 2007 roku bulo zatverdzheno nastupnu redakciyu R6RS 2 Osnovnu uvagu pri stvorenni dialektu bulo pridileno elegantnosti ta konceptualnij dovershenosti movi Yak naslidok povna specifikaciya movi programuvannya Scheme vmistilasya v 50 storinok v toj chas yak specifikaciya Common Lisp maye rozmir 1300 storinok Stislij opis RedaguvatiYak i v Algoli oblasti vidimosti v Scheme statichni kozhne vikoristannya zminnoyi vidpovidaye leksichno vidimomu znachennyu ciyeyi zminnoyi Tipi asociyuyutsya iz znachennyami ob yektami a ne iz zminnimi Inshimi slovami Scheme mova programuvannya iz dinamichnoyu tipizaciyeyu Odnak isnuyut dialekti Scheme iz statichnoyu tipizaciyeyu Vsi ob yekti yaki stvoryuyutsya pid chas vikonannya programi vklyuchayuchi proceduri ta prodovzhennya isnuyut do yiyi zavershennya Zhoden iz ob yektiv ne znishuyetsya Odnak interpretatoram ta kompilyatoram Scheme dozvolyayetsya zvilnyati misce zajnyate ob yektom u vipadku yaksho voni mozhut dovesti sho cej ob yekt v programi bilshe ne vikoristovuyetsya Cyu zadachu zvilnennya miscya v pam yati vid nevikoristovuyemih ob yektiv vikonuye pribiralnik smittya Proceduri v Scheme ye povnocinnimi ob yektami Proceduri mozhna stvoryuvati pid chas vikonannya programi zberigati v strukturah danih povertati yak rezultat roboti inshih procedur i tak dali Odniyeyu iz vidminnih ris Scheme ye te sho prodovzhennya takozh mayut status zvichajnih ob yektiv Prodovzhennya korisni dlya realizaciyi bagatoh skladnih konstrukcij keruvannya vklyuchayuchi nelokalni vihodi non local exits zvorotne vikonannya backtracking ta spivprogrami coroutines Argumenti zavzhdi peredayutsya v proceduri za znachennyam Ce znachit sho vsi znachennya argumentiv obchislyuyutsya do togo yak bude peredano keruvannya do proceduri ne zvazhayuchi na te chi vikoristovuyutsya ci argumenti pid chas vikonannya proceduri Ce vidriznyayetsya vid semantiki linivogo obchislennya movi programuvannya Haskell abo semantiki vikliku po imeni Algol 60 v yakij znachennya virazu argumenta obchislyuyetsya tilki v razi vikoristannya v proceduri Model arifmetiki Scheme rozroblyalas takim chinom shob zalishatis yak mozhna nezalezhnishoyu vid predstavlennya chisel v komp yuteri V Scheme kozhne cile ye racionalnim chislom kozhne racionalne ye dijsnim a kozhne dijsne kompleksne Tomu riznicya mizh arifmetikoyu dijsnih ta kompleksnih chisel yaka prisutnya v inshih movah programuvannya dlya Scheme ne vinikaye Zamist cogo rozriznyayetsya tochna arifmetika yaka vidpovidaye matematichnim idealam ta nablizhena yaka bazuyetsya na aproksimaciyah Yak i v Common Lisp tochna arifmetika ne obmezhuyetsya operaciyami z cilimi chislami V Scheme nayavni operatori cikliv She odnim sposobom organizaciyi ciklichnosti vikonannya pevnogo bloku ye vikoristannya rekursivnih procedur Vsi realizaciyi Scheme mayut vikonuvati pravilnu optimizaciyu hvostovoyi rekursiyi Prikladi program RedaguvatiNapriklad funkciya obchislennya znachennya faktorialu z vikoristannyam operatoriv ciklu matime viglyad define factorial n let loop total 1 i n if i 0 total loop i total i 1 Odnak cyu funkciyu mozhna perepisati iz vikoristannyam rekursiyi define factorial n if n 0 1 n factorial n 1 Tut rekursivnij viklik v znahoditsya v hvosti tila proceduri ale ne ye ostannoyu diyeyu funkciyi tobto ne ye prikladom hvostovoyi rekursiyi Interpretatori ta kompilyatori RedaguvatiDlya movi programuvannya Scheme isnuye velika kilkist interpretatoriv ta kompilyatoriv Deyaki interpretatori vikoristovuyutsya v inshih programah dlya napisannya makrosiv i rozshirennya funkcionalnosti napriklad u grafichnomu redaktori GIMP vikoristovuyetsya interpretator Guile Dlya povnogo pereliku divitsya vidpovidnu storinku ChAPiv Arhivovano 18 lyutogo 2010 u Wayback Machine Zasobi rozrobki RedaguvatiDlya Scheme takozh isnuye velika kilkist dopomizhnih zasobiv rozrobki integrovanih seredovish Do integrovanih seredovish nalezhit Dr Scheme Arhivovano 17 travnya 2008 u Wayback Machine Dlya GNU Emacs ta XEmacs isnuye specialnij osnovnij rezhim scheme mode Arhivovano 11 zhovtnya 2006 u Wayback Machine Dzherela Redaguvati Richard Kelsey William Clinger Jonathan Rees et al August 1998 Revised5 Report on the Algorithmic Language Scheme Higher Order and Symbolic Computation 11 1 7 105 doi 10 1023 A 1010051815785 Arhiv originalu za 5 sichnya 2007 Procitovano 4 grudnya 2007 R6RS org Arhiv originalu za 25 chervnya 2013 Procitovano 4 grudnya 2007 Literatura RedaguvatiRevised 5 Report on the Alogrithmic Language Scheme Richard Kelsey William Clinger Jonathan Rees 1998 Teach Yourself Scheme in Fixnum Days Dorai Sitaram 2004 Div takozh RedaguvatiCommon Lisp inshij populyarnij dialekt movi programuvannya Lisp Lisp Lyambda chislennyaPosilannya Redaguvatischemers org Arhivovano 31 grudnya 2006 u Wayback Machine Spilnota Scheme programistiv angl ChAPi perelik realizacij Arhivovano 18 lyutogo 2010 u Wayback Machine Open Directory Scheme Arhivovano 15 chervnya 2006 u Wayback Machine posilannya na riznomanitni resursi prisvyacheni Scheme nbsp Ce nezavershena stattya pro movi programuvannya Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Otrimano z https uk wikipedia org w index php title Scheme amp oldid 35729043