POP 11: Зерттеу және оқыту үшін арналған бағдарламалау тілі
POP-11
POP 11: интерпретацияланатын тіл сияқты, жинақталатын бағдарламалау тілі. AI зерттеулерінде, оқытуда қолданылады, Pascal-дан Lisp-ке көшуге көмектеседі.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
POP 11 – интерпретацияланған тілдің көптеген мүмкіндіктері бар, рефлексивті, инкременттік компиляцияланатын бағдарламалау тілі. Бұл тіл бастапқыда Сассекс университетінде, ал кейін Бирмингем университетінің компьютерлік ғылымдар мектебінде (негізгі Poplog веб-сайтын ұйымдастыратын орын) әзірленген Poplog бағдарламалау ортасының негізгі тілі болып табылады. POP 11 – Эдинбург университетінде жасалған POP 2 тілінің дамуы, және ол ашық стек моделін (мысалы, Forth сияқты) қолдайды. Тіл негізінен процедуралық болып табылады, бірақ декларативтік тіл құрылымдарын, соның ішінде үлгілерді салыстыру құралын (pattern matcher) қолдайды. Ол көбінесе жасанды интеллект саласындағы зерттеулер мен оқыту үшін қолданылады, бірақ көптеген басқа да мәселелерді шешуге жеткілікті мүмкіндіктерге ие. POP 11 көбінесе Pascal сияқты дәстүрлі тілдердің бағдарламашыларына символдық бағдарламалау әдістерін таныстыру үшін қолданылады, олар POP синтаксисін Lisp-ке қарағанда түсініктірек деп санайды. POP 11-нің маңызды ерекшеліктерінің бірі – ол бірінші дәрежелі функцияларды (first class functions) қолдайды. POP 11 – Poplog жүйесінің негізгі тілі. Компилятордың және компилятордың кіші программаларының жұмыс істеу кезінде қолжетімді болуы (инкременттік компиляциялаудың қажетті шарты) оған макростарды ғана пайдалану арқылы мүмкін болмайтын, кеңейтімдердің (жаңа дерек түрлерін қосу сияқты жұмыс істеу кезіндегі кеңейтімдерді қоса алғанда) ауқымды тізімін қолдауға мүмкіндік береді. Бұл Prolog, Common Lisp және Standard ML үшін қосымша инкременттік компиляторларды құруға мүмкіндік берді, оларды қажет болған жағдайда аралас тілдерде дамуды немесе екінші тілде дамуды қолдау үшін қосуға болады, POP 11 конструкцияларын пайдаланбастан. Бұл Poplog-ты тек бір тілге қызығушылық танытқан оқытушыларға, зерттеушілерге және бағдарламашыларға қолдануға мүмкіндік берді. POP 11 тілінде жасалған ең табысты өнім – ISL компаниясы жасаған Clementine деректерді талдау жүйесі. SPSS компаниясы ISL-ді сатып алғаннан кейін, Clementine-ді SPSS Modeler деп атады және оны C++ және Java тілдеріне көшіруге шешім қабылдады, бұл үлкен күш-жігерді қажет етті және, мүмкін, жасанды интеллект тілін пайдаланудың артықшылықтарын жоғалтты. POP 11 бір кезде тек қымбат коммерциялық пакет (Poplog) құрамында ғана қолжетімді болды, бірақ 1999 жылдан бері Poplog бағдарламалық жасақтамасының ашық кодты нұсқасының бір бөлігі ретінде тегін қолжетімді, соның ішінде әртүрлі қосымша пакеттер мен оқулық кітапханалары бар. ELIZA-ның POP 11 бағдарламасын пайдаланатын онлайн нұсқасы Бирмингемде қолжетімді. Сассекс университетінде Дэвид Янг сурет өңдеу және көру саласындағы оқыту және интерактивті даму құралдарын жасау үшін POP 11 тілін C және Fortran тілдерімен біріктірді және оларды Poplog кеңейтіміндегі Popvision арқылы қолжетімді етті.
POP 11 is a reflective, incrementally compiled programming language with many of the features of an interpreted language. It is the core language of the Poplog programming environment developed originally by the University of Sussex, and recently in the School of Computer Science at the University of Birmingham, which hosts the main Poplog website. POP 11 is an evolution of the language POP 2, developed in Edinburgh University, and features an open stack model (like Forth, among others). It is mainly procedural, but supports declarative language constructs, including a pattern matcher, and is mostly used for research and teaching in artificial intelligence, although it has features sufficient for many other classes of problems. It is often used to introduce symbolic programming techniques to programmers of more conventional languages like Pascal, who find POP syntax more familiar than that of Lisp. One of POP 11's features is that it supports first class functions. POP 11 is the core language of the Poplog system. The availability of the compiler and compiler subroutines at run time (a requirement for incremental compiling) gives it the ability to support a far wider range of extensions (including run time extensions, such as adding new data types) than would be possible using only a macro facility. This made it possible for (optional) incremental compilers to be added for Prolog, Common Lisp and Standard ML, which could be added as required to support either mixed language development or development in the second language without using any POP 11 constructs. This made it possible for Poplog to be used by teachers, researchers, and developers who were interested in only one of the languages. The most successful product developed in POP 11 was the Clementine data mining system, developed by ISL. After SPSS bought ISL, they renamed Clementine to SPSS Modeler and decided to port it to C++ and Java, and eventually succeeded with great effort, and perhaps some loss of the flexibility provided by the use of an AI language. POP 11 was for a time available only as part of an expensive commercial package (Poplog), but since about 1999 it has been freely available as part of the open source software version of Poplog, including various added packages and teaching libraries. An online version of ELIZA using POP 11 is available at Birmingham. At the University of Sussex, David Young used POP 11 in combination with C and Fortran to develop a suite of teaching and interactive development tools for image processing and vision, and has made them available in the Popvision extension to Poplog.