Кіріспе

X3J13 – Халықаралық ақпараттық технологиялар стандарттары комитетінің (INCITS, кейін X3) құрамындағы техникалық комитеттің атауы. X3J13 комитеті 1986 жылы Гай Л. Стил-младшийдің Common Lisp the Language кітабының бірінші басылымына негізделген Америка Ұлттық Стандарттар Институтының (ANSI) Common Lisp стандартын жасау мақсатымен құрылды. Бұл кітап сонымен қатар CLtL немесе CLtL1 деп те аталады және бұрын тілдің де-факто стандарты болып келді. X3J13 комитетінің негізгі нәтижесі – Common Lisp бағдарламалау тіліне арналған Америка Ұлттық стандарты (X3.226/1994), ол 1994 жылдың 8 желтоқсанында мақұлданды. Кейін X3J13 Халықаралық Стандарттау Ұйымының (ISO) SC22/WG16 жұмыс тобымен бірлесіп ISLISP деп аталатын Lisp тілінің халықаралық деңгейде стандартталған түрін жасау бойынша жұмыс істеді.

Ұйым

Комитеттің алғашқы төрағасы Огайо штатының университетінен доктор Роберт Матис болды, ал Мэри ван Деусен хатшы қызметін атқарды. Гай Л. Стил-младший бастапқыда вице-төраға болып тағайындалған. Кейіннен Матис төрағалықтан бас тартып, Стил осы қызметті өз мойнына алды. Комитеттің жұмысы оның жарғысымен басқарылды, оның табысты жасалуы Amoco Production Company өкілі Сьюзан П. Эннистің үйлестіру жұмысына байланысты. Жарғы комитеттің мақсаттары мен басымдықтарын, сондай-ақ қарастырылатын тақырыптардың кең ауқымды тізімін белгілейді.

Төменгі комитеттер

Комитет мүшелерінің күш-жігерін тиімдірек бағыттау үшін бірнеше кіші комитет құрды.

Тазалау жөніндегі кіші комитет

Лари Масинтер төрағалық еткен Тазалау жөніндегі кіші комитет дауыс беруге ұсыныстарды берудің біркелкі форматын құрды. Бұл мәселелерді сипаттаулар, стандарттың өзінің бөлігі болмаса да, Common Lisp HyperSpec-ке оқырмандарға көмектесу үшін қосылып, сілтеме жасалды, комитет шешімдеріндегі бастапқы мақсатты ақпараттандырады. Бұл сипаттамалар сондай-ақ, қабылданбаған проблемаларға қатысты балама шешімдердің тарихи құжаты болып табылады.

Құрастырушылар жөніндегі кіші комитет

Сандра Лоуземор төрағалық еткен бұл кіші комитет Lisp компиляциясына қатысты мәселелер бойынша ұсыныстар жасады. Гай Стил Common Lisp the Language екінші басылымында, компилятор кіші комитетінің бірінші басылымда сипатталған компиляция процесін нақтылауға қосқан үлкен үлесін мойындады, ал сол процестің кейбір бөліктерін Стил "бұлыңғыр" деп сипаттады.

Итерация жөніндегі кіші комитет

Джон Л. Уайт Итерация кіші комитетінің төрағасы болды. Бұл топ шешкен мәселелердің бірі – жалпыланған LOOP макросы, бұл доменге арналған тіл және CLtL-дің екінші басылымы оған толық тарау арнады. Бұл макроның "ALGOL-ға ұқсас" синтаксисі, Lisp-тің көбінесе қолданылатын s-өрнек синтаксисінен өзгеше болғандықтан, сол кезде де, қазір де әлдебір дау тудырып отыр.

Қасиетті тұлғаны анықтау жөніндегі кіші комитет

Том Линден төрағалық еткен Символдық кіші комитет стандарттың әртүрлі таңба жиынтықтарымен байланысты мәселелерді қалай шешетінін анықтау міндетіне ие болды. Бұл мәселелерді шешу, әсіресе символ атауында кез келген таңбаны пайдалану мүмкіндігі, Common Lisp-ті халықаралық қолданушылар үшін жеңілдету мақсатында жасалды.

Қателерді өңдеу жөніндегі кіші комитет

Кент Питман төрағалық еткен Қателерді өңдеу жөніндегі кіші комитет "Common Lisp-тегі ең үлкен шешілмеген мәселе" деп сипатталғанды жапты, осы арқылы фатальды немесе фатальды емес, жалғастырылуы мүмкін немесе мүмкін емес, бағдарлама қатесінен немесе қарапайым ресурс шегінен туындаған (мысалы, стек асығуы) түрлі ерекше жағдайларды өңдеу үшін бірыңғай жүйені қамтамасыз етті. Шарттар кодтың бір жерінде белгіленеді және басқа жерде өңделуі мүмкін. "Сигнал" терминінің осы қолданылуы операциялық жүйенің сигналдарынан өзгеше (Lisp машиналарында осы терминнің басқаша қолданылуын қоспағанда); операциялық жүйенің сигналдары осы комитеттің қарауына кірмейтін, сондықтан ANSI Common Lisp стандартында қарастырылмады. Асинхронды үзілістер және IEEE қозғалатын нүктелік қателерді ұстау да осы комитеттің жұмысының шегінен тыс болды және стандартта қарастырылмады.

Құжат әзірлеуші кіші комитет

Кэти Чэпман жобалау кіші комитетінің төрағасы болды, бұл кіші комитет нақты стандартты құжатты дайындауға жауапты болды. Сонымен қатар, кіші комитет комитет қызметі барысында терминологияның дәйділігі мен біркелділігін қадағалады.

Соңғы құжат

X3J13 комитеті жасаған соңғы стандарт American National Standard X3.226 ретінде және Common Lisp HyperSpec гипермәтіндік нысанында жарияланды.

Common Lisp тілімен байланысы

Common Lisp the Language кітабының авторы, негізінен Guy L. Steele Jr. болғанымен, 1980 жылдар шамасында құрылған және X3J13 құрылғанға дейін Common Lisp үшін де-факто стандартты жасау үшін бірлесіп жұмыс істеген арнайы комитеттің еңбегі болды. X3J13 өз жұмысын Common Lisp the Language кітабын негізгі құжат ретінде пайдаланып бастады, содан кейін ANSI Common Lisp стандартын жобалауға кірісті. Стил комитет мүшесі болды және оларға кітаптың бірінші басылымының кез келген бөлігін өз жұмыстарында пайдалануға рұқсат берді. X3J13 жариялаған құжаттар кейіннен, белгілі бір комитет мүшелерінің цитаталарымен бірге, 1990 жылы жарық көрген Common Lisp the Language Second Edition кітабын дайындау үшін қолданылды. Бұл Common Lisp қауымдастығына комитеттің соңғы стандартында күтілетін көптеген мүмкіндіктерді алдын ала танысуға мүмкіндік берді. Бұл басылым мазмұны жағынан стандартқа ұқсас болғанымен, пішіні басқаша болды. Дегенмен, кітап жарық көргеннен бастап ANSI стандартының соңғы нұсқасына дейін қосымшалар мен жойылған бөлімдер түрінде маңызды өзгерістер енгізілді. Қорыта айтқанда, Common Lisp the Language кітабының бастапқы басылымы X3J13 комитетінің жұмысының бастапқы негізі болды. Ал Екінші басылым, керісінше, Стилдің жеке жұмысы болды, комитет өнімі емес және X3J13 немесе ANSI-де ресми мәртебесіне ие болған жоқ. Екінші басылымның алғы сөзінде айтылғандай, ол X3J13 тарапынан бекітілмеді, мазмұнының таңдалуы X3J13-пен ресми түрде келісімделмеді, ал соңғы нұсқасы X3J13 қарауына немесе мақұлдауына ұсынылмады.