Guile 2.9.5 β ΡΡΠΎ ΠΏΡΡΡΠΉ beta-Π²ΡΠΏΡΡΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Scheme ΠΎΡ GNU, Π³ΠΎΡΠΎΠ²ΡΡΠΈΠΉΡΡ ΠΊ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ 3.x Π²Π΅ΡΠΊΠ΅.
Guile ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ SRFI, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ POSIX ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ Π²ΡΠ·ΠΎΠ²Π°ΠΌ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠ΅ΡΠΈ, Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠΈ, Π²ΡΠ·ΠΎΠ²Π° Π²Π½Π΅ΡΠ½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΠΌΠΎΡΠ½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΡΡΠΎΠΊ. Guile ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² Π±Π°ΠΉΡΠΊΠΎΠ΄ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠΎΡΠ»ΠΎΠΉ Π±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΠ΅ΠΉ:
- ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π½ΡΡ Π²ΠΈΠ΄ΠΎΠ² «Π·Π°ΠΏΠΈΡΠ΅ΠΉ» (Record) Π² ΠΎΠ΄ΠΈΠ½.
- ΠΠΎΠ²Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ:
- Π‘ΡΠ°ΡΡΠΉ throw & catch ΠΈΠ· Guile -> Π² Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΡΠΉ Π² Scheme raise-exception & with-exception-handler.
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΊ ΡΠΈΠΏΠ°ΠΌ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ.
- ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΎΠ² Π΄Π»Ρ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°: else, =>, …, _.
- ΠΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΡΠΉ gettext-Π°Π»ΠΈΠ°Ρ ΡΠ΅ΠΏΠ΅ΡΡ G_.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ —r6rs, Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅ ΠΏΠΎΠ»Π½Π°Ρ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° R7RS (!).
- ΠΠ±ΡΡΠ²Π»Π΅Π½ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ Π²ΡΠ·ΠΎΠ² record-constructor Ρ Π΄Π²ΡΠΌΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: linux.org.ru