www.wikidata.uk-ua.nina.az
Common Lisp Kommon Lisp dialekt movi programuvannya Lisp viznachenij standartom ANSI X3 226 1994 Rozroblenij z metoyu standartizaciyi riznih variantiv movi Lisp sho isnuvali do poyavi standartu Cej dialekt ne ye realizaciyeyu a natomist lishe specifikaciyeyu movi programuvannya Common LispParadigma dekilka imperativna funkcionalna ob yektno oriyentovanaData poyavi 1984Tvorci Scott E Fahlmand Richard P Gabrield i David MoondRozrobnik ANSIOstannij reliz X3 226 1994 1994 Sistema tipizaciyi dinamichna tipizaciya d i stroga tipizaciyaPid vplivom vid Smalltalk Knowledge Representation Language LispOperacijna sistema Cross platformVebsajt common lisp net Common Lisp u VikishovishiMova programuvannya Kommon Lisp realizuye dekilka paradigm zokrema Pidtrimuye imperativnu funkcionalnu ta ob yektno oriyentovanu paradigmi programuvannya Dinamichna mova programuvannya sho spriyaye prishvidshennyu rozrobki program shlyahom iterativnoyi kompilyaciyi Mistit CLOS ob yektnu sistemu sho pidtrimuye multimetodi ta kombinaciyi metodiv Mozhe rozshiryuvatis cherez standartni mehanizmi makrosiv Zmist 1 Tipi danih 2 Makrosi 2 1 Prikladi 3 Ob yektno oriyentovane programuvannya 4 Realizaciyi 5 Primitki 6 Div takozh 7 PosilannyaTipi danih RedaguvatiV Kommon Lisp tip danih mayut ob yekti sho zberigayutsya v zminnih a ne sami zminni sho vidpovidaye dinamichnij sistemi tipizaciyi Kozhna zminna mozhe mati yak znachennya bud yakij ob yekt Lisp Zadlya pokrashennya shvidkodiyi dozvolyayetsya deklaruvati pevni obmezhennya na mozhlivi tipi znachen zminnih 1 Mnozhina vsih ob yektiv poznachayetsya simvolom t Porozhnya mnozhina ob yektiv abo porozhnij spisok poznachayetsya simvolom nil sho vidpovidaye logichnomu ne virno Bud yake inshe znachennya okrim nil vvazhayetsya logichnim virno Chisla v Kommon Lisp ye tipi danih dlya cilih bud yakogo rozmiru obmezhuyetsya kilkistyu nayavnoyi pam yati racionalni chisla utvoryuyutsya pri dilenni cilih chisla z ruhomoyu komoyu ta kompleksni chisla Literi predstavlennya yak pechatnih liter tak simvoliv specialnogo priznachennya Simvoli atomi imenovani dani Kozhen simvol maye spisok atributiv ta mozhe mistiti bud yakij ob yekt Lispa Mozhut vikoristovuvatis yak zminni abo funkciyi Spiski poslidovnosti predstavleni u viglyadi zv yazanih komirok konsiv cons Spiski utvoryuyutsya rekursivno dodannyam novogo elementa u vzhe isnuyuchij spisok stvoryuyuchi novu cons cons ye ob yektom Lisp sho maye dva polya car mozhe mati bud yake znachennya ta cdr vkazivnik na poperednij cons Masivi kolekciyi ob yektiv Lisp pevnoyi vimirnosti V masivah mozhut zberigatis bud yaki ob yekti Lisp Isnuyut dlya pokrashennya efektivnosti roboti masivi sho mozhut mistiti elementi lishe pevnogo tipu Odnovimirnij masiv z elementami bud yakogo tipu maye nazvu vektor masiv liter ryadok bitiv bit vektor Hesh tablici nadayut mehanizm efektivnogo zistavlennya bud yakogo ob yekta klyuch z inshim ob yektom znachennya Paketi kolekciyi simvoliv sho vikoristovuyutsya yak prostori imen Imena fajliv vidpovidayut imenam fajliv u sposib maksimalno ne zalezhnij vid realizaciyi fajlovoyi sistemi Potoki vikoristovuyutsya dlya operacij vvedennya vivedennya ta dlya chitannya informaciyi iz ryadkiv Vipadkovi strukturi strukturi danih sho vikoristovuyutsya dlya zberezhennya informaciyi pro stan vbudovanogo generatora vipadkovih chisel Zapisi strukturi danih sho viznachayutsya koristuvachem Zapisi mayut imenovani skladovi Umovi vikoristovuyutsya yak signali dlya keruvannya poryadkom roboti programi Podibni do viklyuchnih situacij angl Exceptions v deyakih movah programuvannya Krim cih tipiv danih CLOS viznachaye tipi danih dlya klasiv metodiv zagalnih metodiv Makrosi RedaguvatiV Kommon Lispi makrosi angl macro ce operatori sho realizuyutsya shlyahom peretvorennya kodu Makros viznachayetsya tim yak bude peretvoreno kod sho jogo viklikaye Peretvorennya sho she zvetsya rozkrittyam makrosa angl macro expansion vikonuyetsya kompilyatorom avtomatichno Yak naslidok kod stvorenij makrosom staye takoyu zh chastinoyu kodu yak i vvedenij koristuvachem kod programi 2 Do tipovih vipadkiv vikoristannya makrosiv nalezhat novi strukturi keruvannya poryadkom vikonannyam cikli vidgaluzhennya tosho konstrukciyi oblasti vidimosti ta zv yazuvannya zminnih sproshennya skladnih fragmentiv kodiv sho chasto povtoryuyutsya viznachennya form vishogo rivnya z pobochnimi efektami chasu kompilyaciyi programuvannya kerovane danimi vbudovani predmetno oriyentovani movi programuvannya SQL HTML Prolog tosho Makrosi zadayut makrosom defmacro Specialnij operator macrolet dozvolyaye viznachennya lokalnih makrosiv Takozh mozhlivo zadavati makrosi dlya simvoliv vikoristannyam define symbol macro ta symbol macrolet Knizhka On Lisp Pola Grehema prisvyachena dokladnomu rozglyadu mozhlivostej makrosiv v Kommon Lisp Prikladi Redaguvati Napriklad nastupnij makros viznachaye operator aif sho otrimuye dvi abo tri formi obchislyuye znachennya pershoyi zapam yatovuye jogo v zminnij it ta u vipadku yaksho znachennya istina t vikonuye drugu formu a yaksho znachennya ne istina i zadana tretya forma to tretyu tak zvane anaforichne yaksho defmacro aif test then amp optional else let it test if it then else Pri comu zapam yatovane u zminnij it znachennya pershoyi formi dostupne pid chas vikonannya oboh nastupnih aif trivale ta skladne obchislennya print it sho vidpovidaye nastupnomu psevdokodu pre style overflow x auto it trivale ta skladne obchislennya if it then print it pre Ob yektno oriyentovane programuvannya RedaguvatiDokladnishe CLOSOb yektna sistema Kommon Lispa CLOS ye rozshirennyam Kommon Lispa sho dodaye pidtrimku mozhlivostej ob yektno oriyentovanogo programuvannya v Kommon Lisp V osnovi cogo rozshirennya znahodyatsya zagalni funkciyi mnozhinne uspadkuvannya deklarativne kombinuvannya metodiv ta meta ob yektnij protokol 3 Fundamentalnimi ob yektami CLOS ye klasi ekzemplyari klasiv zagalni funkciyi ta metodi Zagalna funkciya ce funkciya povedinka yakoyi zalezhit vid klasiv abo znachen peredanih argumentiv Ob yekt zagalnoyi funkciyi mistit mnozhinu metodiv lyambda spisok tip kombinuvannya metodiv ta inshu informaciyu Metodi viznachayut povedinku zagalnih funkcij v zalezhnosti vid klasiv peredanih argumentiv inshimi slovami metodi vikonuyut specializaciyu zagalnih funkcij Buduchi viklikanoyu zagalna funkciya vikonuye pidmnozhinu vlasnih metodiv v zalezhnosti vid klasiv argumentiv 4 Zvichajna funkciya Kommon Lisp maye odne tilo spisok instrukcij sho zavzhdi vikonuyetsya pri vikliku funkciyi Na vidminu vid zvichajnih funkcij zagalni funkciyi mayut mnozhinu til lishe pidmnozhina yakih vikonuyetsya pid chas vikliku zagalnoyi funkciyi Obrani tila ta sposib yihnoyi kombinaciyi zalezhit vid klasiv parametriv zagalnoyi funkciyi ta sposobom kombinuvannya Realizaciyi RedaguvatiStanom na listopad 2007 roku isnuyut taki realizaciyi specifikaciyi Kommon Lisp sho mali aktivnu pidtrimku spilnoti rozrobnikiv 5 Allegro CL Arhivovano 18 chervnya 2020 u Wayback Machine komercijna licenziya Linux Unix Mac Windows Armed Bear CL ABCL GPL z vinyatkom na Java 1 4 ta novishe CMU CL Arhivovano 30 zhovtnya 2005 u Wayback Machine CMUCL vilnij Linux Unix Mac Clozure CL Arhivovano 16 chervnya 2008 u Wayback Machine OpenMCL LLGPL Linux Unix Mac Corman CL Arhivovano 25 zhovtnya 2005 u Wayback Machine komercijna licenziya Windows Embedded CL Arhivovano 26 grudnya 2007 u Wayback Machine ECL LGPL Linux Unix Mac Windows GNU CL Arhivovano 6 bereznya 2008 u Wayback Machine GCL LGCP GPL Linux Unix Mac GNU clisp CLISP GPL Linux Unix Mac Windows LispWorks Arhivovano 25 zhovtnya 2005 u Wayback Machine komercijna licenziya Linux Unix Mac Windows Scieneer CL SCL komercijna licenziya Linux Unix Steel Bank CL SBCL BSD Vidkrita Linux Unix Mac Primitki Redaguvati Kent Pitman 1996 Common Lisp HyperSpec The Harlequin Group Limited Arhiv originalu za 5 serpnya 2002 Procitovano 26 grudnya 2007 Paul Graham ANSI Common Lisp Prentice Hall 1996 Guy L Steele Jr Common Lisp the Language vid 2 ge Daniel G Bobrow Linda G DeMichiel Richard P Gabriel Sonya E Keene Gregor Kiczales and David A Moon 1988 Common Lisp Object System Specification Daniel Weinreb Common Lisp Implementations A Survey Arhivovano 21 kvitnya 2012 u Wayback Machine version 2 Div takozh RedaguvatiVikipidruchnik maye knigu na temu Mova programuvannya LispScheme she odin populyarnij dialekt movi programuvannya Lisp Lyambda chislennyaPosilannya RedaguvatiCommon Lisp katalog posilan Open Directory Project Association of Lisp Users Arhivovano 28 kvitnya 2021 u Wayback Machine angl asociaciya koristuvachiv Lisp Common Lisp Wiki Arhivovano 5 kvitnya 2022 u Wayback Machine angl Viki prisvyachena Kommon Lisp Pidruchniki Peter Seibel Practical Common Lisp Arhivovano 29 lipnya 2005 u Wayback Machine angl vilno dostupnij pidruchnik z Kommon Lisp The Common Lisp Cookbook Arhivovano 26 grudnya 2007 u Wayback Machine angl vilno dostupna dokumentaciya Kommon Lisp David B Lamkins Successful Lisp How to Understand and Use Common Lisp Arhivovano 16 grudnya 2006 u Wayback Machine angl Otrimano z https uk wikipedia org w index php title Common Lisp amp oldid 38526729