Fournit un compilateur natif intégré, un débogueur, et de nombreuses extensions.
Steel Bank Common Lisp (SBCL) a été testé sur différentes plates-formes POSIX et de Windows
Ce qui est nouveau dans cette version:.
- Amélioration:
- sb-bsd-prises a maintenant un soutien de base pour IPv6
- Un package sb-unicode a été ajouté, contenant de nombreuses fonctions liées à la gestion du texte Unicode
- Le lecteur normalise maintenant des symboles à la forme de normalisation KC (NFKC). Ce comportement peut être désactivé avec le SB-EXT: READTABLE-NORMALISATION
- Un style d'alerte est signalée si les déclarations se multiplient OPTIMISER spécifier une qualité avec des valeurs différentes.
- Correction de bugs:
- conservative souligné pages effacent dwords inutilisés afin qu'ils ne peuvent pas agir comme fausses racines à son tour.
- Le comportement de la marchette de variables lexicale et symbole macro reliures est améliorée
- Händler- {BIND, CASE} plus tomber dans ldb lorsqu'une clause contient un type de condition non définie; régression 1.1.19
- Dans le code interprété, prédicats d'inégalité ne tapez-vérifier les arguments qui ont pas été examinés, et une utilisation de 1 argument MIN ou MAX accepté un nombre complexe.
- APROPOS et APROPOS-LIST poignée hérité symboles correctement.
Ce qui est nouveau dans la version 1.2.12:
- Amélioration:
- sb-bsd-prises a maintenant un soutien de base pour IPv6
- Un package sb-unicode a été ajouté, contenant de nombreuses fonctions liées à la gestion du texte Unicode
- Le lecteur normalise maintenant des symboles à la forme de normalisation KC (NFKC). Ce comportement peut être désactivé avec le SB-EXT: READTABLE-NORMALISATION
- Un style d'alerte est signalée si les déclarations se multiplient OPTIMISER spécifier une qualité avec des valeurs différentes.
- Correction de bugs:
- conservative souligné pages effacent dwords inutilisés afin qu'ils ne peuvent pas agir comme fausses racines à son tour.
- Le comportement de la marchette de variables lexicale et symbole macro reliures est améliorée
- Händler- {BIND, CASE} plus tomber dans ldb lorsqu'une clause contient un type de condition non définie; régression 1.1.19
- Dans le code interprété, prédicats d'inégalité ne tapez-vérifier les arguments qui ont pas été examinés, et une utilisation de 1 argument MIN ou MAX accepté un nombre complexe.
- APROPOS et APROPOS-LIST poignée hérité symboles correctement.
Ce qui est nouveau dans la version 1.2.11:
- Amélioration:
- sb-bsd-prises a maintenant un soutien de base pour IPv6
- Un package sb-unicode a été ajouté, contenant de nombreuses fonctions liées à la gestion du texte Unicode
- Le lecteur normalise maintenant des symboles à la forme de normalisation KC (NFKC). Ce comportement peut être désactivé avec le SB-EXT: READTABLE-NORMALISATION
- Un style d'alerte est signalée si les déclarations se multiplient OPTIMISER spécifier une qualité avec des valeurs différentes.
- Correction de bugs:
- conservative souligné pages effacent dwords inutilisés afin qu'ils ne peuvent pas agir comme fausses racines à son tour.
- Le comportement de la marchette de variables lexicale et symbole macro reliures est améliorée
- Händler- {BIND, CASE} plus tomber dans ldb lorsqu'une clause contient un type de condition non définie; régression 1.1.19
- Dans le code interprété, prédicats d'inégalité ne tapez-vérifier les arguments qui ont pas été examinés, et une utilisation de 1 argument MIN ou MAX accepté un nombre complexe.
- APROPOS et APROPOS-LIST poignée hérité symboles correctement.
Ce qui est nouveau dans la version 1.2.10:
- Amélioration:
- sb-bsd-prises a maintenant un soutien de base pour IPv6
- Un package sb-unicode a été ajouté, contenant de nombreuses fonctions liées à la gestion du texte Unicode
- Le lecteur normalise maintenant des symboles à la forme de normalisation KC (NFKC). Ce comportement peut être désactivé avec le SB-EXT: READTABLE-NORMALISATION
- Un style d'alerte est signalée si les déclarations se multiplient OPTIMISER spécifier une qualité avec des valeurs différentes.
- Correction de bugs:
- conservative souligné pages effacent dwords inutilisés afin qu'ils ne peuvent pas agir comme fausses racines à son tour.
- Le comportement de la marchette de variables lexicale et symbole macro reliures est améliorée
- Händler- {BIND, CASE} plus tomber dans ldb lorsqu'une clause contient un type de condition non définie; régression 1.1.19
- Dans le code interprété, prédicats d'inégalité ne tapez-vérifier les arguments qui ont pas été examinés, et une utilisation de 1 argument MIN ou MAX accepté un nombre complexe.
- APROPOS et APROPOS-LIST poignée hérité symboles correctement.
Ce qui est nouveau dans la version 1.2.0:
- Bug fix:
- lecture temps-eval contexte backquote mixup.
- Amélioration:
- Lorsque SAVE-LISP-ET-DIE échoue plusieurs threads en raison, le rapport des conditions listes signalées en cours d'exécution threads.
- Ported ARM Linux.
- sb-gmp contrib a été mis à jour.
- Nouveau contrib sb-mpfr.
Ce qui est nouveau dans la version 1.1.11:
- Support construction du manuel sous texinfo la version 5.
- Les fenêtres builds afficher plus le & quot; Kitten of Death & quot; message. Un avertissement est plutôt ajouté à la bannière régulière, et peut être coupé avec --noinform.
- bâtiment de soutien sous une nouvelle manipulation de lieur de syscalls sous NetBSD.
Ce qui est nouveau dans la version 1.1.10:
- Amélioration:
- ASDF a été mis à jour 3.0.2.
- Optimisation:
- Sur x86 et x86-64, entiers formes de négation comme (- x). Sont maintenant reconnus dans des contextes arithmétiques modulaires, et compiler à negate natif plutôt que de passer par bignums seulement pour garder les bits faibles
- Les cadres Stack sont emballés de manière plus efficace sur x86oids, qui devrait réduire la fréquence des références conservatrices Methuselahn (il aide certainement avec gc.impure.lisp / BUG-936304 sur x86).
Ce qui est nouveau dans la version 1.1.9:
- Nouvelle fonctionnalité:
- Les liens contrib SB-GMP avec libgmp à l'exécution pour accélérer l'arithmétique sur bignums et ratios.
- Amélioration:
- Démonter annote maintenant certaines fonctions statiques précédemment manquantes, comme LONGUEUR.
- clean.sh maintenant nettoie aussi doc / internes.
- SB-EXT:. PRINT-SYMBOL-AVEC-préfixe peut être utilisé dans ~ // pour imprimer un symbole avec un préfixe de package
- Le débogueur et un tracé rétrograde sont plus robustes contre les méthodes bogué PRINT-OBJECT.
- Optimisation:
- Les appels à des fonctions statiques sur x86-64 utilisent moins instructions.
Ce qui est nouveau dans la version 1.1.6:
- Amélioration:
- L'erreur continuable quand defknown-ing sur les entrées de FNDB existantes peut être ignoré par le passage: écraser-FNDB-t silencieusement comme un argument mot-clé pour sb-c: defknown (après attributs). Utile pour permettre defknown à être rechargé. Utiliser avec:. Allow-autres-clés t pour la compatibilité descendante
- Optimisation:
- Compiler est beaucoup plus rapide dans la compilation (SETF SVREF) formes SVREF et.
- Bug fix:
- Empêcher un make-array transformée de modifier les formes de source causant des problèmes pour le code inline.
- clear-output appelle le flux de routine gris correct.
- Une erreur est signalée pour un format modificateur invalide: ~ & # x3C; ~ @ & # X3e; .
Ce qui est nouveau dans la version 1.1.3:
- Le support d'installation MSI pour Windows utilise désormais Windows Installer XML au moins la version 3.5 et comprend diverses améliorations d'utilisation.
- Les sb-bsd-sockets contrib supporte désormais non-bloquant en mode sous Windows.
- Le backend Windows supporte désormais la plate-forme x86-64.
- fasls sont maintenant une fois de plus directement exécutable (sur les plateformes supportant les lignes de Shebang, avec un sbcl convenablement installé).
Ce qui est nouveau dans la version 1.1.1:
- Optimisation:
- Le backend SPARC supporte maintenant la générationnelle (GENCGC) collecte des ordures précis. Activé par défaut sur Solaris / SPARC et Linux / SPARC.
- Le compilateur ne tourne plus de boucles dans certains cas où cette transformation effectivement conduire à un code pire généré.
- Amélioration:
- Ajout du support expérimental pour la fonction SB-THREAD et l'installation de la minuterie sur Windows. Les threads sont activés par défaut, et cette version de SBCL est considérée comme la dernière et la dernière version à supporter officiellement la construction avec des fils handicapés.
- Bug fix:
- SB-CLTL2: MACROEXPAND-ALL gère correctement l'observation des symboles macros par les liaisons lexicales .
- allocation Stack a été empêché par déclaration de haut DEBUG dans plusieurs cas.
- SB-EXT:. GC-LOGFILE signalé une erreur quand aucun fichier journal a été créé
- PARSE-NATIVE-nameString effectué l'analyse non-native lorsque: JUNK-ADMIS était vrai .
Ce qui est nouveau dans la version 1.1.0:
- Amélioration:
- Nouvelle variable, sb-poste: * démontez-annoter * pour contrôler la source annotation de la sortie DÉSASSEMBLER. Par défaut, T.
- arguments TIMEOUT ajouté à WITH-MUTEX et AVEC récursif-LOCK, l'argument et ATTENDEZ-P ajouté à WITH-RÉCURSIVE-LOCK.
- amélioration: SB-EXT: ATOMIC-PUSH et SB-EXT: ATOMIC-POP permet des opérations atomiques sur la liste des têtes .
- Caractéristiques optionnelles (non activé par défaut) permettre l'utilisation de signaux pour la synchronisation inter-thread à être réduits sur certaines plates-formes prises en charge (actuellement Linux, Solaris et FreeBSD sur x86 et x86-64).
Ce qui est nouveau dans la version 1.0.58:
- implicites avertissements de fonction génériques indiquent maintenant le package dans lequel la nouvelle fonction générique est créé.
- SB-EXT: (! Similaire au swap Clojure). ATOMIC-UPDATE, il est facile d'effectuer des mises à jour non destructifs de CAS-mesure endroits
- Run-programme ne décode et l'environnement ré-encode lorsque: l'argument de l'environnement ne sont pas fournies. (# 985904)
- Erreurs lors de l'expansion du compilateur macro ne provoquent plus des erreurs d'exécution, seul un avertissement à la compilation, sinon se comporter comme si la macro du compilateur avait refusé de se développer.
- Sur x86-64, l'alignement de code d'en-têtes de bloc se fait avec PON multi-octets maintenant au lieu de répétitions du NOP seul octet.
- MAP-EN est sensiblement plus rapide lorsque la séquence cible est de type inconnu; la cartographie dans des listes est plus O (N ^ 2). (Merci à James M. Lawrence)
- Le compilateur ne heap-conses pour vérifier les sorties dans les cas où la fonction de sortie est étendue dynamique, ou lorsqu'elle peut établir la fonction de sortie ne peut pas échapper.
- SB-SEQUENCE:. DOSEQUENCE est plus rapide sur les vecteurs de type inconnu d'élément, et des vecteurs qui ne sont pas SIMPLE-ARRAY
Ce qui est nouveau dans la version 1.0.57:
- protocole Redessiné pour cesser de fumer SBCL. SB-EXT: EXIT est le nouveau point d'entrée principal, SB-EXT:. QUIT est obsolète
- Ajouts à l'API SB-FILET:. RETURN-DE-FIL, ABORT-THREAD, MAIN-THREAD-P, et MAIN-Thread
- FASL chargement ne saisit le monde-lock.
- GENCGC récupère l'espace de façon plus agressive lorsque les objets étant alloués sont une grande partie de l'espace disponible sur le tas au total. (# 936304)
- backtraces montrent le nombre correct d'arguments pour les cadres appelés avec trop d'arguments.
- Support pour abort (3), sortie (3), et _exit (2) a été ajouté à SB-POSIX.
Ce qui est nouveau dans la version 1.0.56:.
- Copie structure fixe
- SBCL peut maintenant être construit en utilisant Clang.
- ASDF a été mise à jour 2.20.
- erreurs du compilateur fixe lorsque l'affaiblissement de types entiers velues.
Ce qui est nouveau dans la version 1.0.40:
- Bug fix: readdir travaille maintenant sur: inode64 darwin construit.
- Bug fix:. Nom des conflits entre les symboles passés comme arguments à un seul appel à importer plus ajouter plusieurs symboles avec le même nom pour le paquet (détectable via DO-SYMBOLES)
- Bug fix:. Bâtiment de soutien sans dlshim sur darwin x86 et x86-64
- Bug fix: TRACE:. Encapsuler NIL travaille maintenant sur ppc / linux
Ce qui est nouveau dans la version 1.0.33:
- Nouveau port: Ajout du support pour x86-64 NetBSD .
- Amélioration: le soutien de l'accès aux fichiers O_LARGEFILE plus de 2 Go sur x86-64 / linux. (Grâce à Daniel Janus; launchpad bug # 453080)
- Nouvelle fonctionnalité: SB-Introspect:. OMS-SPÉCIALISÉ-DIRECTEMENT pour obtenir une liste de définitions pour les méthodes spécialisées sur la classe passé lui-même
- Nouvelle fonctionnalité: SB-Introspect:. OMS-SPÉCIALISÉ-GÉNÉRALEMENT pour obtenir une liste de définitions pour les méthodes spécialisées sur la classe passé lui-même, ou sur des sous-classes de celui-ci
- Nouveau drapeau de construction: sb-xref-for-internes; SBCL recueillera des informations xref sur lui-même lors de la construction (par exemple pour M-? En Slime), si ce drapeau est en customize-target-features.lisp. Cela permettra d'accroître le noyau d'environ 5-6mb, cependant, il est donc surtout intéressant de SBCL
- développeurs.
Ce qui est nouveau dans la version 1.0.31:
- Amélioration: la répartition de la pile est devrait maintenant être possible tous les cas d'inlining imbriqués:. défaut de pile allouer lorsque le code est équivalent manuellement ouvert codé est maintenant considéré comme un bug
- Amélioration liés à des bugs Unicode
- Nouvelle fonctionnalité: expérimentale:. EMIT-CFASL paramètre à COMPILE-FILE peut être utilisé pour la production toplevel effets de compilation de temps dans un fichier séparé .CFASL
- Optimisation: COERCE à VECTOR, STRING, SIMPLE-STRING et reconnaissables sous-types d'un dimenstional de ARRAY est jusqu'à 70% plus rapide lorsque la contrainte est réellement nécessaire .
- Optimisation: TRUNCATE sur simple et double-flotteurs connu est jusqu'à 25% plus rapide .
- Optimisation:. Division de nombres à virgule flottante par des constantes utilise la multiplication par réciproque lorsqu'une réciproque exacte existe
- Optimisation:. Multiplication de simple et double flotteurs flotteurs par deux constantes a été optimisé
- Optimisation:. ARRAY-IN-BOUNDS-P est résolu à la compilation lorsque des informations de type disponible est suffisant
- Optimisation: SLOT-VALUE et (SETF SLOT-VALUE) avec des noms de sous constants sur les objets de structure connus sont aussi efficaces que defstruct généré accesseurs .
Commentaires non trouvées