Allegro Common Lisp
Allegro Common Lisp este o implementare comercială a limbajului de programare Common Lisp dezvoltat de Franz Inc. Allegro Common Lisp include, de asemenea, un IDE multiplatform și un depanator [3]
. Allegro Common Lisp include toate funcționalitățile ANSI Common Lisp, precum și unele extensii, cum ar fi interfața OpenGL, ramificare, fluxuri CLOS, CLOS MOP, unicode, fluxuri SSL și implementări ale unor protocoale TCP.
Origine
Compania americană Franz Inc, producătorul sistemului Allegro Common Lisp, a fost fondată în 1984 de către angajați ai departamentului IT de la Universitatea din California. Scopul creării sale a fost inițial de a oferi suport comercial pentru sistemul Franz Lisp Lisp, creat la sfârșitul anilor 1970 și începutul anilor 1980 prin eforturile comune ale laboratoarelor IT ale mai multor universități din SUA și distribuit sub licența BSD . Compania a portat Franz Lisp pe mai multe platforme noi (Motorola 68000, SUN).
Când procesul de standardizare a limbajului Lisp a fost finalizat în 1985 și a fost publicat standardul, care a primit denumirea de Common Lisp, în câțiva ani a avut loc o reorientare a majorității utilizatorilor americani către noul standard. În aceste condiții, Franz Inc nu a reușit să găsească comenzi și, pentru a evita închiderea, a fost nevoită să înceapă dezvoltarea propriei implementări a Common Lisp, căruia i s-a dat numele Allegro. Astfel, Allegro Common Lisp (sau „Allegro CL”, așa cum este prescurtat pe site-ul producătorului) se dezvoltă de trei decenii. Cea mai recentă versiune 10.1 a fost lansată pe 15 februarie 2017.
Multiplatformă
Allegro Common Lisp 10.1 rulează pe platforme:
Platformă |
Suport SMP
|
Linux pe 64 de biți (ARMv8) glibc 2.17 |
DA
|
Linux pe 32 de biți (x86) glibc 2.12 |
DA
|
Linux pe 64 de biți (x64) glibc 2.12 |
DA
|
macOS 10.11 pe 32 de biți |
NU
|
macOS pe 64 de biți 10.11 |
DA
|
Windows pe 32 de biți |
DA
|
Windows pe 64 de biți |
DA
|
FreeBSD pe 32 de biți (x86) |
NU
|
Solaris/AMD pe 64 de biți |
NU
|
Solaris/SPARC pe 32 de biți |
NU
|
Solaris/SPARC pe 64 de biți |
NU
|
Compoziție, variante
Sistemul furnizat include următoarele componente de bază:
- Compilator și interpret comun Lisp cu un set de biblioteci standard.
- Un set necesar de scripturi și instrucțiuni pentru configurarea unui mediu de dezvoltare bazat pe SLIME (CL + Emacs ).
- Obiect DBMS AllegroCache, scris în același Lisp, care acceptă stocarea transparentă, plasarea și căutarea obiectelor Lisp. În unele ediții livrate, funcționalitatea AllegroCache este limitată (vezi mai jos).
- Documentație.
Sistemul este furnizat în mai multe ediții diferite, care diferă în compoziția bibliotecilor și a instrumentelor.
- Free Express Edition (ediție gratuită) - include doar setul de bază de componente și numai în versiunea pe 32 de biți. AllegroCache vine într-o versiune limitată funcțional. Nu există IDE, SLIME ar trebui să fie folosit ca mediu de dezvoltare. Ediția este destinată utilizării educaționale și necomerciale.
- Professional Edition (ediție profesională) - include un set de bază de componente într-o versiune pe 32 de biți și versiunea AllegroCache Pro (cu limitări minore de funcționalitate), precum și în plus:
- un set de biblioteci și instrumente pentru lucrul cu XML;
- SOAP API și compilator WSDL;
- Allegro Webactions - un cadru pentru crearea de site-uri web cu suport dinamic bazat pe CommonLisp;
- Allegro Prolog - un interpret incorporabil pentru o versiune scurta a limbajului Prolog ;
- API pentru expresii regulate, OpenGL, IPV6, SSH, SHA1, HMAC, RC4, SSL;
- Java Tools Suite - un set de instrumente și biblioteci pentru interacțiunea cu Java;
- AllegroServe este un server web scris în Lisp care acceptă pagini dinamice Lisp;
- IDE-ul original pentru Common Lisp cu un designer de interfață grafică pentru aplicații cu ferestre;
- Allegro Composer este un instrument interactiv de dezvoltare și depanare pentru Linux/Unix.
- Enterprise 32 Edition (pentru dezvoltarea și implementarea aplicațiilor pe 32 de biți). Include întregul set de componente Professional Edition, plus:
- AllegroCache - versiune fără restricții;
- Allegro ODBC - acces la RDBMS prin protocolul ODBC;
- Allegro MySQL Direct Connect - componente pentru acces direct de înaltă performanță la DBMS MySQL ;
- Allegro Runtime - componente pentru implementarea aplicațiilor dinamice.
- Enterprise 64 Edition (pentru dezvoltarea și implementarea aplicațiilor pe 64 de biți) - include același set ca Enterprise 32 Edition, dar cu componente și biblioteci în versiunea pe 64 de biți.
- Enterprise 64 Platinum Edition (pentru dezvoltarea și implementarea aplicațiilor pe 64 de biți în sisteme distribuite). Include Enterprise 64 Edition plus:
- Allegro CLIM - constructor de interfețe grafice;
- Allegro ORBLink - implementare broker CORBA pentru Lisp;
- Allegro Oracle Direct Connect - componente pentru acces direct de înaltă performanță la DBMS Oracle .
Note
- ↑ Franz Inc. Acord de licență software Franz (ing.) (pdf) (link nu este disponibil) . Preluat la 14 martie 2010. Arhivat din original la 11 aprilie 2012.
- ↑ (titlu nespecificat) - 2017.
- ↑ Medii de dezvoltare integrate Franz Inc. Data accesului: 14 martie 2010. Arhivat din original la 18 februarie 2010. (nedefinit)
Link -uri
Lisp comun |
---|
Implementări |
|
---|
Software | Biblioteci |
- CLSQL
- -HTTP
- CL-PPCRE
- CLX
- de fier
- Web simbolic
- Web neobișnuit
- Weblock-uri
- Hunchentoot
- AllegroCache
- ASDF
- CLiki
- CLIM
|
---|
Aplicații |
- Clfswm
- muzica comuna
- Muzica
- muzicală comună
- ICAD
- InspireData
- PrimeTrader
- Mirai
- Maxima
- openmusic
- PWGL
- Stumpwm
- SiteGrinder
- OAZĂ
- autopreț
|
---|
Medii de dezvoltare |
|
---|
|
---|
Publicații |
- the Language
- Paradigme ale
- Arta protocolului
- Pe
- comun practic
- Programare orientată pe obiecte în Common
|
---|
comitetul de proiectare |
|
---|
Alte |
|
---|
Seturi de instrumente (seturi) de elemente GUI |
---|
nivel scăzut |
|
---|
nivel înalt | Amiga OS |
|
---|
MacOS și macOS |
- Cacao
- macapp
- MacZoop
- Centrală electrică
|
---|
Windows |
|
---|
UNIX , sub X |
|
---|
Cross platform _ | Bazat pe flash |
|
---|
Bazat pe XML, AJAX sau SVG |
|
---|
Bazat pe Java |
|
---|
Bazat pe C sau C++ |
|
---|
Bazat pe Common Lisp |
|
---|
Bazat pe Pascal |
|
---|
Bazat pe Python |
|
---|
Pe baza Obiectiv-C |
|
---|
|
---|
|
---|