Π˜Π·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° SBCL 2.3.11, рСализация Π½Π° Π΅Π·ΠΈΠΊΠ° Common Lisp

ΠŸΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ SBCL 2.3.11 (Steel Bank Common Lisp), свободна рСализация Π½Π° Π΅Π·ΠΈΠΊΠ° Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Common Lisp. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π΅ написан Π½Π° Π΅Π·ΠΈΡ†ΠΈΡ‚Π΅ Common Lisp ΠΈ Π‘ΠΈ, ΠΈ сС разпространява ΠΏΠΎΠ΄ лицСнзия BSD. Π’ Π½ΠΎΠ²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅:

  • НСбольшиС Π½Π΅ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΠΈ:
    • ΠŸΠΎΡ‚ΠΎΠΊΠΈΡ‚Π΅ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ external-format, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Β«:REPLACEMENTΒ», Ρ‰Π΅ ΠΏΡ€ΠΈΠ»Π°Π³Π°Ρ‚ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π·Π° замСстванС Π½Π° информация Π΅Π΄ΠΈΠ½ ΠΏΡŠΡ‚ Π² ΠΏΠΎΡ‚ΠΎΠΊΠ°, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ (Π° Π½Π΅ ΠΊΠ°ΠΊΡ‚ΠΎ Π² някои случаи, Π΅Π΄ΠΈΠ½ ΠΏΡŠΡ‚ Π·Π° послСдоватСлност ΠΎΡ‚ Π±Π°ΠΉΡ‚ΠΎΠ²Π΅, всСки ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ Π΅ допустима стартова позиция Π·Π° символа Π² Ρ‚ΠΎΠ·ΠΈ external-format).
    • ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ external-format ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π½Π΅ΠΏΠΎΠ΄ΠΏΠΎΠΌΠ°Π³Π°Π½ΠΈ ΠΈΠ»ΠΈ нСизвСстни Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ сСга Ρ‰Π΅ сигнализират Π·Π° Π³Ρ€Π΅ΡˆΠΊΠ°.
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈΡ:
    • ΠŸΡ€ΠΈ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ стандартния ΠΈΠ»ΠΈ краткия ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°Π½Π΅, ΠΏΡ€ΠΈ ΠΎΡ‚ΡΡŠΡΡ‚Π²ΠΈΠ΅ Π½Π° основни ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, систСмата Ρ‰Π΅ ΠΈΠ·Π²ΠΈΠΊΠ° ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π°Ρ‚Π° функция SB-PCL:NO-PRIMARY-METHOD, чиято стандартна ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π²Π° сигнализиранС Π·Π° Π³Ρ€Π΅ΡˆΠΊΠ°. ΠŸΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° Ρ‚Π°Π·ΠΈ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π° функция.
    • Π’ΡŠΠ½ΡˆΠ½ΠΈΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ сСга ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ Π½Π° Π½ΠΎΠ² Ρ€Π΅Π΄ Π·Π° ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²ΠΈ ΠΈ utf-8 ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ.
    • Π‘ΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ ΠΏΠΎΡ‚ΠΎΡ†ΠΈ ΠΈΠ»ΠΈ ΠΎΠΊΡ‚Π΅Ρ‚ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ Π·Π° ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ Π½Π° символи сСга ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ USE-VALUE рСстартиранС Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ, прСдоставящи замСствания Π·Π° Π²Ρ…ΠΎΠ΄ ΠΈΠ»ΠΈ ΠΈΠ·Ρ…ΠΎΠ΄.
    • READ-SEQUENCE ΠΈ WRITE-SEQUENCE ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ послСдоватСлности, опрСдСляни ΠΎΡ‚ потрСбитСля; стандартната рСализация ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΏΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚, Ρ‡Π΅Ρ‚Π΅ΠΉΠΊΠΈ ΠΈΠ»ΠΈ записвайки Π΅Π΄ΠΈΠ½ Π±Π°ΠΉΡ‚ ΠΈΠ»ΠΈ символ Π²/ΠΎΡ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ.
  • ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ:
    • Π’ΡŠΠ½ΡˆΠ½ΠΈΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ с :REPLACEMENT ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π½Π΅ ΠΎΠ±Π²ΡŠΡ€Π·Π²Π°Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ Π·Π° Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΎΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° конвСрсия, ΠΊΠΎΠ΅Ρ‚ΠΎ трябва Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈ броя Π½Π° cons-ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ ΠΈ Π΄Π° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈ производитСлността.
    • Ако :EXTERNAL-FORMAT ΠΈΠ³Ρ€Π°Π΅ роля Π½Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π·Π° STRING-TO-OCTETS ΠΈΠ»ΠΈ OCTETS-TO-STRING ΠΈ Π΅ константа ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° компилация, Ρ‚ΠΎ Π²ΡŠΠ½ΡˆΠ½ΠΈΡΡ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ сС Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π²Π° ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ, Π° Π½Π΅ ΠΏΡ€ΠΈ всяко ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅.
    • ΠšΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅Ρ‚Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ Π·Π° някои Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ въз основа Π½Π° извлСчСния ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‰ сС Ρ‚ΠΈΠΏ стойност, която сС Π²Ρ€ΡŠΡ‰Π° ΠΎΡ‚ Ρ‚Π°Π·ΠΈ функция.
    • ΠšΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΡŠΡ‚ намалява броя Π½Π° ΠΈΠ·Π»ΠΈΡˆΠ½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅ във Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ ASSOC ΠΈ GETF.
  • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠΈ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ:
    • OCTETS-TO-STRING ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ сигнализира ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ»Π°Π³Π° Π·Π°ΠΌΠ΅Π½ΠΊΠΈ ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π΅Π΄Π½ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²ΠΈ външни Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ Π·Π° нСразпространСни ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, iso-8859-3), Π° Π½Π΅ Π²Π·ΠΈΠΌΠ° Π±ΠΈΡ‚ΠΎΠ²Π΅ ΠΎΡ‚ адрСс NIL ΠΈ Π½Π΅ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€Π° Ρ‚Π΅Π·ΠΈ Π±ΠΈΡ‚ΠΎΠ²Π΅ Π² символи.
    • FILE-STRING-LENGTH сСга Π²Ρ€ΡŠΡ‰Π° NIL, Π°ΠΊΠΎ Π²Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ стойности Π½Π΅ сС ΠΊΠΎΠ΄ΠΈΡ€Π°Ρ‚ във външСн Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π° ΠΏΠΎΡ‚ΠΎΠΊΠ°.
    • Π’Π°Π±Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²ΠΈ външни Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ (EUC-JP, Shift-JIS, GBK) сСга ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Ρ‚ замСститСлния символ (във външСн Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΈΠ»ΠΈ Ρ‡Ρ€Π΅Π· рСблагодСтСлстванС) ΠΏΡ€ΠΈ ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ Π² ΠΎΠΊΡ‚Π΅Ρ‚ΠΈ.
    • ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΎΡ‚ ΠΎΠΊΡ‚Π΅Ρ‚ΠΈ Ρ‡Ρ€Π΅Π· външни Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ UCS-2, UCS-4 ΠΈ UTF-32 ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π½Π΅ Ρ‡Π΅Ρ‚Π΅ края Π½Π° масива ΠΎΠΊΡ‚Π΅Ρ‚ΠΈ с нСцСлочислСн Π±Ρ€ΠΎΠΉ Π΄Π²Π΅ ΠΈΠ»ΠΈ Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈΠ±Π°ΠΉΡ‚ΠΎΠ²ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ†ΠΈ.
    • ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΎΡ‚ ΠΎΠΊΡ‚Π΅Ρ‚ΠΈ Ρ‡Ρ€Π΅Π· външни Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ UCS-2, UCS-4 ΠΈ UTF-32 сСга Π²Ρ€ΡŠΡ‰Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ Π½ΠΈΠ·, ΠΊΠ°ΠΊΡ‚ΠΎ изисква ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π·Π° Ρ‚ΠΈΠΏ OCTETS-TO-STRING.
    • ΠŸΡ€ΠΈΠ»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π΅Π½ външСн Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π·Π° OPEN ΠΈΠ»ΠΈ WITH-OPEN-FILE (ΠΈΠ»ΠΈ Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΎ MAKE-FD-STREAM) ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π½Π΅ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ² дСскриптор.
    • SB-ROTATE-BYTE опрСдСля спСцификациитС BYTE извън допустимитС стойности ΠΏΡ€Π΅Π΄ΠΈ изпълнСниС конс Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ†Π΅Π»ΠΈ числа Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° маски ΠΈ смСни.
    • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ° Π½Π° Ρ‚ΠΈΠΏΠ° ΠΈΠ·Ρ…ΠΎΠ΄ ΠΏΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΠΈΡ‚Π΅ Π½Π° SB-ROTATE-BYTE с Π½Π΅Π½ΡƒΠ»Π΅Π²Π° POSITION Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π±Π°ΠΉΡ‚Π°.
    • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ° Π½Π° няколко Π³Ρ€Π΅ΡˆΠΊΠΈ Π½Π° асСмблСр ΠΏΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° MAKE-ARRAY, MAKE-STRING ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ с голям постоянСн Ρ€Π°Π·ΠΌΠ΅Ρ€.
    • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ° Π½Π° Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½Π° Π³Ρ€Π΅ΡˆΠΊΠ° ΠΏΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ (SETF-SBIT) с голям постоянСн индСкс.
    • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ° Π½Π° Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½Π° Π³Ρ€Π΅ΡˆΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° Π·Π° лямбда-функция с Π½Π΅ΠΊΠΎΡ€Π΅ΠΊΡ‚Π΅Π½ списък ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π² LABELS.
    • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ° Π½Π° Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½Π° Π³Ρ€Π΅ΡˆΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° ΠΏΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° някои Π±Π΅Π·ΠΊΡ€Π°ΠΉΠ½ΠΎ-рСкурсивни Ρ„ΠΎΡ€ΠΌΠΈ LABELS.
    • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ° Π½Π° Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½Π° Π³Ρ€Π΅ΡˆΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° ΠΏΡ€ΠΈ ΠΎΠΏΠΈΡ‚ Π·Π° Π²Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΡ€Π΅Ρ…ΠΎΠ΄ към Π²Π΅Ρ‡Π΅ ΠΈΠ·Ρ‚Ρ€ΠΈΡ‚ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚.
    • FILL-POINTER Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ трябва Π΄Π° Π΅ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»Π΅Π½.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster