Steel Bank Common Lisp (SBCL) є відкритим вихідним кодом, мультиплатформенний і вільна середовище розробки, висока компілятор діяльності за стандарт ANSI мови програмування Common Lisp. Вона написана повністю в Lisp мову програмування і розроблених спеціально для developers.Features протягом glanceKey функції включають в себе відмінну підтримку для збору сміття, вбудовані потужні макроси, підтримка лексичних закриття, ефективну реалізацію динамічної типізації, а також додаткових можливостей компіляції.
Програмне забезпечення також включає в себе безліч розширень, таких як власними потоками, підтримка сокета, статистичної Profiler, програмовані потоки, і багато інших. Все це розширення можна за допомогою інтерактивного та комплексного рідної компілятор, який відчуває себе як перекладача.
Якщо ви і Rsquo; що ви шукаєте докладної інформації про те, як встановити Steel Bank Common Lisp на Linux дистрибутив або, як його використовувати, не соромтеся перевірити проект & Rsquo; домашню сторінку (посилання в кінці статті) .Getting почав зі сталевою загальний банк LispTo використовувати Steel Bank Common Lisp від вашого дистрибутива GNU / Linux, просто завантажте попередньо встановлений вбудований бінарний пакет розроблені для 64-бітових апаратних платформ, зберегти його на місці за вашим вибором, розпакувати його і відкрити програму терміналу емулятора ,
В термінальній додаток, запустити & lsquo; ш run-sbcl.sh & Rsquo; Команда для доступу до його командного рядка, де ви зможете ввести команду HELP, щоб переглянути детальну інформацію про доступні опціях і дізнатися, як використовувати операційні системи compiler.Supported і availabilitySteel Банк Common Lisp є унікальним в тому, крос-платформний рідної Common Lisp компілятор, який працює на GNU / Linux, BSD, Mac OS X і Microsoft Windows операційних систем, bootstraping себе повністю від джерела.
Для вашої зручності, крім універсального архіву з вихідним кодом, програмне забезпечення поширюється у вигляді вбудованих бінарного пакета, що дозволяє використовувати Steel Bank Common Lisp, що не встановлюючи його на 64-бітових (x86_64) комп'ютерів.
< STRONG> Що нового У цьому випуску:
- Поліпшення: Гастрономічні ПОДІЇ використовує опитування () системний виклик замість виберіть (), якщо ОС має колишній , Раніше опитування () використовується, тільки якщо чекати рівно на один описатель файлу.
- Поліпшення :. Ефективність доступу до нетегірованних слотів структури поліпшується на x86-64 і порядок слотів в пам'яті точно так, як зазначено defstruct, що спрощує використання структур в якості аргументів іноземних викликає
- Виправлена помилка: SB-DEBUG: ARG тепер працює у всіх варіантах слід, який оцінити форми. (LP # 1357826)
- Виправлена помилка :. GC пошкодження пам'яті при внутрішній обробці пам'яті
- Виправлена помилка: дублювати об'єкти ефективної слот чіткості в порівнянні з еквалайзером на ім'я може бути присутнім в класі-слотах класу, чиї метакласи був структурно-клас або умова клас. (LP # 1049423)
- Виправлена помилка: HANDLER-BIND з порожніми прив'язок знову працює; регрес в 1.2.5. (LP # 1388707)
- Виправлена помилка: ATOMIC-INCF працює на структури слотів в интерпретируемого коду. (LP # 1381867)
- Виправлена помилка: MAKE-ARRAY правильно обробляє типажі, як (EQL # ) і (користувач # A # C). (LP # 1392068)
- Виправлена помилка: Read Іноді випадково зберігся символ пропуску після маркера, коли він не повинен мати. (LP # 327790)
Що нового у версії 1.1.13:
- Оптимізація: поліпшення розподілу SXHASH на невеликих conses в пов'язаних з цінностями. (# 309443)
- інші поліпшення в SXHASH:
- використовувати весь спектр позитивного Fixnum для SXHASH з fixnums
- Поліпшення :. Повідомлення про помилку при виклику невизначеного прибульців функція включає ім'я функції на x86-64
- Поліпшення: SB-EXT: виконання програми тепер підтримує :. Середовища на вікнах
- Поліпшення: ASDF більше не потрібний для завантаження внесок під час виконання. (# 1132254)
- Поліпшення: при виклику з символом, не знайдете перезапуск більше не називає COMPUTE перезапускає, що робить його швидше і мінуси менш (# 769615)
- Поліпшення: Знайти перезапуск і обчислити перезапускає обробляти величезні скупчення перезапуску краще в деяких випадках
- Поліпшення: ДЕЯКІ / ANY / інші функції кількісне більш високого порядку більше не мінуси. (# 1070635)
- Виправлена помилка: випереджальні посилання на заняття з fasls тепер можуть бути завантажені. (# 746132)
- Виправлена помилка: не попереджають про interpreted- і GT; складений функції перевизначення в тому ж місці. (Патч Дуглас Кацман, # 1042405)
- Виправлена помилка: Створення векторів належного внутрішнього довжини при читанні буквальні вектори з FASLs. (Про це повідомляє Ян Moringen)
- Виправлена помилка: COMPILE тепер можна succefully компіляції функції SETF. (Про це повідомляє Дуглас Кацмана)
- Виправлена помилка: виконання програма виконує більш правильне екранування аргументів на Windows. (# 1239242)
- Виправлена помилка: функція лямбда-вираз загальних функцій повертає реальне ім'я .
- Виправлена помилка: ([тип] [постійна]) тепер попереджає, коли [постійна] відповідає [Тип] для ряду значень за винятком. (Про це повідомляє Натан Trapuzzano на SBCL-допомога)
- Виправлена помилка: помилки сигналу в необхідних випадках протоколу ініціалізації слот чіткості. (# 309072)
- Виправлена помилка: run-sbcl.sh працює краще в присутності символічних посилань на OS X. (завдяки Стеліан Іонеску, # 1242643)
- Виправлена помилка: при введенні об'єкта перезапуску, ШУКАТИ перезапуск перевіряє, чи є повторного включення, і, коли умова поставки, будь то перезапуск пов'язано з різним станом (# 774410)
Що нового у версії 1.1.12:
- Поліпшення: Додати SB-BSD-сокетів: Socket -shutdown, для виклику Shutdown (3). (Дякуємо Яну Moringen, # 1207483)
- Поліпшення: Документ розгортаються послідовності. (Дякуємо Яну Moringen, # 994528)
- Оптимізація: РІВНІ і EQUALP перетворення розумнішими. (Завдяки Еліас Martenson, # 1220084)
- Оптимізація :. CHAR-EQUAL швидше для постійних і база символьні аргументи
- Виправлена помилка: зонд-файл можна відкрити символічні посилання на трубах і розетки в / Proc / PID / FD на Linux. (За повідомленням Еріка Шульте)
- Виправлена помилка :. SBCL тепер може бути побудований на Solaris x86-64
- Виправлена помилка :. Плаваючий винятку точки не зберігаються на Solaris більше
- Виправлена помилка: (. SETF). Правильно pprinted (за повідомленням Дуглас Кацмана)
- Виправлена помилка: обробляти компілятором помилку в кришці, якщо їм не управляти зсередини СЕВС. (# 1219601)
- Виправлена помилка: SB-GMP: МПЗ-POW більше не повертає помилку сегментації не дали, чи не bignum базу. (Завдяки Стефан Франк)
- Виправлена помилка: простір розподіл результатів bignums в СО-GMP є більш точним. (Завдяки Стефан Франк, # 1206191)
- Виправлена помилка: SB-safepoint тепер можуть надійно обробляти сигнали переривань зовнішньої коду. (# 1133018)
- Виправлена помилка: компілятора макрос MAKE-наприклад, коли випромінюючий & Quot; Відкат і Quot; Конструктори більше не в змозі об'єднати фактичні і за замовчуванням initargs (завдяки Яну Moringen, # 1179858)
- Виправлена помилка: компілятора макрос MAKE-наприклад, коли випромінюючий & Quot; Відкат і Quot; Конструктори обробляє аргументи ініціалізації, що не ключове слово більш правильно.
- Виправлена помилка: завантаження СО-простий-потоків не сприяли модуль більше не перевизначає FILE-NAMESTRING. (Дякуємо Антону Коваленко, # 884603)
- Виправлена помилка: визначення класів з CPLS, несумісних з їх метакласи менш імовірно, щоб знищити цілісність об'єкта системи. (# 309076)
- Виправлена помилка: перезавантаження пункт розбору в RESTART-CASE є більш відповідно до стандартом. (# 1203585, спасибі Яну Moringen)
- Виправлена помилка: мовчання записку від RESTART-CASE в налаштуваннях оптимізації на високій швидкості. (# 1023721)
- Виправлена помилка: отримання порядок аргументів на СО-СС: SET-FUNCALLABLE інстанції РЕЖИМ неправильно виробляє помітною помилки, а не вдалося AVER. (За повідомленням Пол Натан)
- Виправлена помилка: Розбір і додаткового / & ключа / & відпочинок аргументи тепер ніколи не перезаписує аргументи під час копіювання на x86 і x86-64; він все ще може статися і на інших платформах, коли є більше фіксованих аргументів, ніж слотів стека. (За повідомленням Ян Moringen)
Що нового у версії 1.0.52:
- Поліпшення: ASDF був оновлений до версії 2.017.
- Поліпшення :. Варіант --core командного рядка тепер приймає виконувані файли з вбудованою ядра
- Поліпшення: при складанні на: сб-Core-стиснення, основних файлів (звичайний або виконуваний файл) може бути стиснутий з Zlib. Використовуйте :. COMPRESSION аргумент SAVE-LISP-і-померти, щоб вказати рівень стиснення
- Поліпшення: - [no-] злити-Core-сторінки визначає натякає середу операційної системи, що ідентичні основні сторінки між SBCL процесів повинні в тій же фізичній пам'яті. За замовчуванням, тільки дозволить це для стиснутих стержнів.
- Оптимізація :. SLEEP більше не conses
- Оптимізація :. * PRINT-PRETTY * більше не уповільнює друк рядків або біт-векторів при використанні стандартного досить-принт відправка таблиця
- Виправлена помилка: не-функціональні декларації FTYPE більше не викликати компілятор помилок. (# 738464)
- Виправлена помилка: компілятора помилки заподіює типи елементів у поєднанні з з AREF, CHAR і т.д. (# 826971)
- Виправлена помилка: компілятора помилки заподіює цілочисельних аргументів з складається з декількох діапазонів у масив-в-BOUNDS-P. (# 826970)
- Виправлена помилка :, @ і. Тепер сигнал помилки читання часу для нек-яких список виразів. (# 770184)
- Виправлена помилка :. Складні поодинокі літерали з плаваючою точкою правильно вирівняні при використанні в якості аргументів арифметичних операторів
- Виправлена помилка: на 32-бітних платформах, округлення подвійних поплавців більше, ніж у Fixnum правильно. (За повідомленням Пітер Келлер)
- Виправлена помилка: бродячих FD-обробників не більш не залишилася валятися після розмотувалася RUN-програми. (# 840190, про це повідомив Домінік Pearson; виправлення від Max Mikhanosha)
- Виправлена помилка :. Перевизначення класів, таких, що слоти з одними розподілу додані або видалені знову працює
Що нового у версії 1.0.50:
- Поліпшення: помилки з FD обробників в даний час забезпечують перезапуск щоб видалити обробник порушника.
- Поліпшення: SB-самоаналізом :. ШУКАТИ-е-ДЖЕРЕЛО тепер працює на структури копіювальних апаратів, а також
- Поліпшення: розташування користувача або файлів ініціалізації системи тепер можуть легко бути налаштовані для збережених ядер. См: SB-EXT: * UserInit-PATHNAME-функція * і SB-EXT :. * SYSINIT-PATHNAME-функція *
- Поліпшення: SB-EXT: MAKE-НИТКА приймає список аргументів позначення для стуком, як ключове слово аргументу,:. Аргументів
- Поліпшення: поширення обмеження спрощується (і прискорило), коли ПОДБОРКА-SPEED і GT; Швидкість.
- Поліпшення :. SB-ALIEN експорт чужі типу специфікатори РОЗМІР-T і OFF-T
- Поліпшення: відладчик розуміє і більше аргументів краще .
- Оптимізація: витяг бітів одного-зверненні на x86-64 була оптимізована. (# 555201)
- Оптимізація: MAP і MAP-INTO більш ефективний для непростих векторів, коли (і GT; космічну швидкість) .
- Оптимізація :. Місцеві батути викликів (x86 і x86-64) испускаются вбудований
- Оптимізація :. Неявні клітини значення для динамічного протяжності закритими протягом прив'язок на x86 і x86-64 може містити без коробки значення, а також
- мета-оптимізації: збільшена швидкість компіляції, особливо для великих функцій. (# 792363 і # 394206)
- Виправлена помилка: пов'язані висновок для операцій з плаваючою комою в даний час більш обережні округлення, можливо, закриття відкритих кордонів. (# 793771)
- Виправлена помилка: SB-POSIX: аргумент SYSCALL помилок в даний час є обов'язковим. (Випадково тому несумісне зміна в 1.0.48.27)
- Виправлена помилка :. Випадкові помилки відладчик, коли типу помилка у функції з динамічним протяжності і список спокою
- Виправлена помилка :. І необов'язковим і & ключові подачею р аргументи в DEFSTRUCT BOA-construtors можуть бути використані для ініціалізованих слотів структури
- Виправлена помилка: FMAKUNBOUND видаляє макро-функцію, чи слід існує. (# 795705, регресія)
- Виправлена помилка: КАТАЛОГ краще працює на логічних імен каталогів .
- Виправлена помилка: RUN-PROGRAM більше не вдається ложно, коли аргумент рядка замовлення масиву ВСЬОГО-максимально допустимого розміру. (# 787237)
- Виправлена помилка: компілятор постійним-не складається пренебрежимо в підживлення {одномісні, двомісні} -FLOAT. (# 486812)
- Виправлена помилка: ФОРМАТ тепер обробляє з плаваючою точкою округлення правильно, наприклад. (Формат нуль і Quot; ~, 1F і Quot; 0,01) = & GT; І Quot; 0,0 & Quot; замість & Quot; 0,01 & Quot; як раніше. (# 308961)
- Виправлена помилка :. Попередження стиль під лямбда-список інтроспекції функцій загального як з додатковими і основними argments
- Виправлена помилка: regalloc НЕ блювати на вільні TNS в залежності від типу спрямованого константами. (# 729765)
- Виправлена помилка :. Виправлена від по-окремо на карті розміщену-об'єкти, які можуть з'явитися причиною нескінченних циклів
Що нового у версії 1.0.49:
- були зроблені багато поліпшень і виправлень
- Одна невелика несумісне зміна було зроблено, що відносяться до обробки переривань в хеш-таблиці коду.
Що нового у версії 1.0.46:
- Поліпшення :. Підтримка largefile на Solaris
- Поліпшення: SB-ПРОФІЛЬ: ДОПОВІДЬ тепер підтримує: рівень і: аргументи PRINT-NO-CALL-лист (# 710017)
- Поліпшення: SB-PCL: + слот-незв'язаних + експортується, що дозволяє відрізнити незв'язаних слотів примірника При використанні стандартних інстанції доступу & CO. (# 718039)
- Оптимізація: ПОМИЛКА і CERROR приблизно в 5 разів швидше, .
- Оптимізація: оптимізовані конструктори використовуються для MAKE-екземпляр класу до чинного нестандартних (SETF SLOT-VALUE-ВИКОРИСТАННЯМ-КЛАС), слот-BOUNDP-ВИКОРИСТАННЯМ-КЛАС, і ініціалізувати інстанції: близько методи, прискорюючи екземпляр створення в цих випадках.
- Оптимізація: арифметичні операції з декількома постійними аргументами в даний час, тим зрізати під час компіляції. (# 676414)
- Оптимізація :. Визначення позиції поточного символу на строкових потоків для красивої друку з був занадто повільним
- Виправлена помилка: місцевий хвіст виклики функцій DYNAMIC-мірою вже не може викликати аналіз життя, щоб перезаписати закритими більше змінних (# 681092) .
- Виправлена помилка :. Кодування помилки деяких мультибайтних зовнішніх форматів, таких як EUC-JP були правильно оброблені (# 713063)
- Виправлена помилка :. Печатки об'єктів waitqueue без установки * PRINT-коло * Т тепер можна безпечно (# 673630)
- Виправлена помилка: Solaris / x86-64 не отримував зібраний з підтримкою Lutex помилково. (# 667297).
- Виправлена помилка: постійно генеруються функції були фіктивні лямбда-списки. (# 713626)
- Виправлена помилка: RUN-PROGRAM: опція PTY було колоритний на OpenBSD. (# 669485)
- Виправлена помилка: UNINTERN приймає символ, а не символ позначення, - раніше могли unintern неправильному символ з таким же ім'ям. (# 693796)
- Виправлена помилка: COPY-PPRINT-розсилка завжди має доступ до первозданної таблиці, що дозволяє відновити вихідну таблицю, якщо вона була переплуталися. (# 678409)
Що нового у версії 1.0.43:
- несумісне зміна: ФО-потоків більше не брати участь в Гастрономічні Подія контур за замовчуванням. (# 316072)
- На додаток до потоках, створених за допомогою явних викликів Make-FD-Stream це впливає потоків від CL :. Відкрити
- Потоки від Socket-MAKE-STREAM і далі брати участь у послужити захід за замовчуванням, але це може мінятися: додатків, які потребують служити-подія для потоків сокетов повинні явно запросити його за допомогою :. Гастрономічні ПОДІЇ T у виклику
- Поліпшення: SB-EXT: Введіть слово надається для використання з SB-EXT :. АТОМНОЇ-INCF і зі
- Поліпшення: CLOS ефективним функції метод і DEFCLASS слот функції перевірки типів тепер є імена налагодження для використання в ланцюжків викликів і профілів .
- Поліпшення: ASDF був оновлений до версії 2,004. (# 605260, завдяки Вартість проїзду Рідо)
- Поліпшення: символи виводяться за допомогою повністю кваліфіковані імена в декількох помилок і попереджувальних повідомлень, які часто пов'язані з пакетом конфліктів або mixups (# 622789, завдяки Attila Lendvai)
- Виправлена помилка: SB-BSD-сокетів: Socket-CONNECT не було поточно. (# 505497, завдяки Ендрю Голдінга)
- Виправлена помилка: читання / Proc файли на Linux працює. (# 425199)
- Виправлена помилка: DOTIMES прийнято буквальне нецілочисельне реалів. (# 619393, завдяки римським Marynchak)
- Виправлена помилка: ПИШИТЕ в рядок компілятор макрос зв'язування спеціальні імена змінних, порушуючи код, який намагався записати значення змінної керування принтера. (# 581564, завдяки Стаса Boukarev)
- Виправлена помилка: Написати компілятор макрос не впоратися вихідний потік позначення правильно. (# 598374, завдяки Стаса Boukarev)
- Виправлена помилка: краще наявність імен іноземних функцій в ланцюжків викликів на Linux. (# 626962, завдяки Стаса Boukarev)
- Виправлена помилка: сценарії і побудувати для Solaris і FreeBSD. (# 615497, # 627581, завдяки Джош Ельзассер і Джим Уайз)
- Виправлена помилка: побудувати виправлення для OpenBSD -current і 4,8 (# 615489, # 615492, завдяки Джош Ельзассер)
- Виправлена помилка: використання псевдонімів для BuiltIn класів, як DEFMETHOD спеціалізаторов без додавання DEFTYPEs для них працює. (# 618387)
- Виправлена помилка: юридично динамічний протяжності списки і вектори, використовувані в якості аргументів ініціалізацію, щоб зробити масиву може бути стек виділяється. (# 586105)
- Виправлена помилка: рядний розширення створення посилання на мертвих лямбда-змінних (# 454681, завдяки Олексію Дейнека)
- Виправлена помилка: краще повідомлення про помилку для фіктивних аргументів, до випадковою. (# 598986, завдяки Стаса Boukarev)
- Виправлена помилка: компілятор іноді вбудовані посилання з несумісних середовищ відбувається. (# 308951)
- Виправлена помилка: компілятор кинув помилку при спробі компіляції локальної функції (мітки або FLET), відомі прийняти спеціалізований комплекс аргумент. (Не в Launchpad, про це повідомив sykopomp в #lispgames)
- Виправлена помилка: пакет замки не в змозі захистити від часу компіляції ефектів DEFUN, коли символ раніше було визначення макросу. (# 576637)
- Виправлена помилка: помилковий ігнорувати попередження навіть при (оголошувати ігнорувати) в методах, коли зв'язування параметрів мутував. (За повідомленням плати за проїзд Рідо, ЗО # 611361)
- Виправлена помилка: обхідний шлях для компілятора висіти у відповідності із замовленням UVL-набори (# 308914)
- Виправлена помилка: оцінка відладчик REPL працює, використовуючи глобальний контекст, коли в рамках, які не мають достатньої інформації налагодження .
- Виправлена помилка: перевищення ліміту FD_SETSIZE зараз призводить до помітної помилки (# 316068)
- Виправлена помилка: (SETF документації) макросу працює належним чином. (# 643958, завдяки Стаса Boukarev)
- Виправлена помилка: перервати займає більше часу, ніж зазначений період викликано спати, щоб повісити на Дарвіна. (# 640516, завдяки Джо Lebroco для аналізу)
не «LI> Виправлена помилка: timetravel по getrusage () більше не викликає Type-помилки під час GC. (# 544421)
Що нового у версії 1.0.42:
- побудувати зміни
- хост Крос-компіляція тепер вказується в make.sh за допомогою параметра командного рядка --xc-Host = & # x3c; Команда & # x3e; замість позиційного аргументу. (Дякуємо Даніель оселедець)
- Встановити місце розташування можна задати, щоб make.sh за допомогою аргументу командного рядка prefix = & # x3c; Шлях & # x3e;. (# 550889s, завдяки Даніелю оселедець)
- Оптимізація: здійснення замовчуванням обчислювальними розпізнати-функція не набагато менше даремно роботи .
- Поліпшення: Явні операції бар'єр пам'яті тепер доступні для використання багатопотоковому коді. Зверніться до документації для деталей.
- Поліпшення :. Експериментальна підтримка для нарізування різьблення на Linux / PPC
- Виправлена помилка: Rename-ПАКЕТ повертає пакет. (Дякуємо Ерік Марсден)
- Виправлена помилка: EXPT сигналізує про помилку, якщо перший аргумент є нульовим, а другий параметр є плаваючою точкою нулю. (# 571581, завдяки римським Marynchak)
- Виправлена помилка: DEFTYPE сигналізує про помилку для не-список лямбда-списки. (# 576594, завдяки римським Marynchak)
- Виправлена помилка: зробити ASDF-INSTALL сумісні з нині входить ASDF2. (# 612998, про це повідомив Філ Hargett; патч від Джима Мудрого)
Коментар не знайдено