GNU Guile 3.0 ืื™ื– ื‘ืืคืจื™ื™ื˜

ืคืืจื’ืขืงื•ืžืขืŸ ืžืขืœื“ื•ื ื’ GNU Guile 3.0, ืึท ืคืจื™ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึท ืคืึทื ื’ืงืฉืึทื ืึทืœ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš Scheme, ื•ื•ืึธืก ืฉื˜ื™ืฆื˜ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื™ืžื‘ืขื“ ืงืึธื“ ืื™ืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ืื™ืŸ ืื ื“ืขืจืข ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทื›ืŸ. Guile ืงืขื ืขืŸ ื•ื•ืขืจืŸ ื’ืขื ื•ืฆื˜ ื•ื•ื™ ืึท ืฉืคึผืจืึทืš ืฆื• ืึทื ื˜ื•ื•ื™ืงืœืขืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ื™ืงืกื˜ืขื ืฉืึทื ื–, ื“ืขืคื™ื ื™ืจืŸ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืึธื“ืขืจ ืึทื ื˜ื•ื•ื™ืงืœืขืŸ ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ ื“ื™ ืคืึทืจืฉื™ื“ืŸ ืคึผืจื™ืžื™ื˜ื™ื•ื•ื– ืฆื•ื’ืขืฉื˜ืขืœื˜ ื“ื•ืจืš ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ. Guile ืื™ื– ื“ืขืจ ื‘ืึทืึทืžื˜ืขืจ ืคืึทืจืœืขื ื’ืขืจื•ื ื’ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืฉืคึผืจืึทืš ืคึฟืึทืจ ื“ื™ GNU ืึธืคึผืขืจื™ื™ื˜ื™ื ื’ ืกื™ืกื˜ืขื.

ืื™ืŸ ื“ื™ ื”ืึทืจืฅ ืคื•ืŸ Guile ืื™ื– ืึทืŸ ืขืคืขืงื˜ื™ื•ื• ื•ื•ื™ืจื˜ื•ืึทืœ ืžืึทืฉื™ืŸ ื•ื•ืึธืก ืขืงืกืึทืงื™ื•ืฅ ืึท ืคึผืึธืจื˜ืึทื˜ื™ื•ื• ื’ืึทื ื’ ืคื•ืŸ ื™ื ืกื˜ืจืึทืงืฉืึทื ื– ื“ื–ืฉืขื ืขืจื™ื™ื˜ืึทื“ ื“ื•ืจืš ืึท ืกืคึผืขืฆื™ืขืœ ืึธืคึผื˜ื™ืžื™ื–ื™ื ื’ ืงืึทืžืคึผื™ื™ืœืขืจ. ื“ื™ Guile ื•ื•ื™ืจื˜ื•ืึทืœ ืžืึทืฉื™ืŸ ืœื™ื™ื›ื˜ ื™ื ื˜ืึทื’ืจื™ื™ืฅ ืžื™ื˜ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืงืึธื“ ืื™ืŸ C ืื•ืŸ C ++. ืื™ืŸ ืึทื“ื™ืฉืึทืŸ ืฆื• ื“ื™ ืกื›ืขืžืข ืฉืคึผืจืึทืš, ืคึฟืึทืจ ื•ื•ืึธืก ืกืคึผืขืกื™ืคื™ืงืึทื˜ื™ืึธืŸ ืฉื˜ื™ืฆืŸ ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“ R5RS, R6RS ะธ R7RS, ื“ื™ Guile ืคึผืจื•ื™ืขืงื˜ ื”ืื˜ ื“ืขื•ื•ืขืœืึธืคึผืขื“ ืงืึทืžืคึผื™ื™ืœืขืจื– ืคึฟืึทืจ ืื ื“ืขืจืข ืฉืคึผืจืึทื›ืŸ, ืึทื–ืึท ื•ื•ื™ ECMAScript, Emacs Lisp ืื•ืŸ Lua (ืื•ื ื˜ืขืจ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’). ื“ืขืจ ืคึผืขืงืœ ื›ื•ืœืœ ืึท ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืคื•ืŸ ืžืึทื“ื–ืฉื•ืœื– ื•ื•ืึธืก ื™ื ืกื˜ืจื•ืžืขื ื˜ ื ืึธืจืžืึทืœ ื“ื™ื ืกื˜ ืคืึทื ื’ืงืฉืึทื ื–, ืึทื–ืึท ื•ื•ื™ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ื™ ื”ื˜ื˜ืคึผ ืคึผืจืึธื˜ืึธืงืึธืœ, ืงืกืžืœ ืคึผืึทืจืกื™ื ื’ ืื•ืŸ ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ื›ื™ื™ืคืขืฅ-ืึธืจื™ืขื ื˜ื™ื“ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืžืขื˜ื”ืึธื“ืก.

ื“ืขืจ ืฉืœื™ืกืœ ื›ื™ื“ืขืฉ ืื™ืŸ GNU Guile 3.0 ืื™ื– ื’ืขื•ื•ืขืŸ ื“ื™ ื”ืงื“ืžื” ืคื•ืŸ ืึท JIT ืงืึทืžืคึผื™ื™ืœืขืจ, ืื™ืŸ ืึทื“ื™ืฉืึทืŸ ืฆื• ื“ื™ ืคืจื™ืขืจ ื’ืขืคึฟื™ื ื˜ ื™ื‘ืขืจื–ืขืฆืขืจ ืื•ืŸ ื‘ื™ื˜ืขืงืึธื“ืข ืงืึทืžืคึผื™ื™ืœืขืจ, ืขืงืกืึทืงื™ื•ื˜ืึทื“ ืื™ืŸ ืึท ืกืคึผืขืฆื™ืขืœ ื•ื•ื™ืจื˜ื•ืึทืœ ืžืึทืฉื™ืŸ ื˜ื™ื™ื“ ืฆื• ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืื™ืŸ ื“ื™ ืคืึธืจืขื ืคื•ืŸ ืึท ื‘ื™ื‘ืœื™ืึธื˜ืขืง. JIT ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื“ื–ืฉืขื ืขืจื™ื™ื˜ ืžืึทืฉื™ืŸ ืงืึธื“ ืื•ื™ืฃ ื“ื™ ืคืœื™ืขืŸ ืื•ืŸ ื‘ืื˜ื™ื™ื˜ื™ืง ืกืคึผื™ื“ื– ื“ื™ ื“ื•ืจื›ืคื™ืจื•ื ื’ ืคื•ืŸ Guile ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– (ื˜ืขืกื˜ืก ื•ื•ื™ื™ึทื–ืŸ ืกืคึผื™ื“ ืึทืจื•ื™ืฃ ืฆื• 4 ืžืืœ). ื“ื™ JIT ืงืึทืžืคึผื™ื™ืœืขืจ ืฉื˜ื™ืฆื˜ x86-64, i686, ARMv7 ืื•ืŸ AArch64 ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจื–.

ืขื˜ืœืขื›ืข ืื ื“ืขืจืข ื™ืžืคึผืจื•ื•ื•ืžืึทื ืฅ:

  • ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ ื ื™ื™ึทืข ืกื›ืขืžืข ืฉืคึผืจืึทืš ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ R7RS ืื•ืŸ ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืžืึทื“ื–ืฉื•ืœื– ื“ื™ืคื™ื™ื ื“ ืื™ืŸ ืขืก;
  • ื“ื™ Guile ื•ื•ื™ืจื˜ื•ืขืœ ืžืึทืฉื™ืŸ ื’ื™ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื ื™ื“ืขืจื™ืงืขืจ-ืžื“ืจื’ื” ื‘ื™ื™ื˜ืขืงืึธื“, ืึทืœืึทื•ื™ื ื’ ืึทื•ื•ืึทื ืกื™ืจื˜ืข ืึทืคึผื˜ืึทืžืึทื–ื™ื™ืฉืึทื ื–;
  • ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืงืึทืžื‘ื™ื™ื ื™ื ื’ ื™ื ืขืจืœืขืš ื“ื™ืคื™ื™ื ื– ืื•ืŸ ืื•ื™ืกื“ืจื•ืงืŸ (ืœืžืฉืœ, "(ื“ืขืคื™ื ื™ืจืŸ _ (ืึธื ื”ื™ื™ื‘ (ืคืึธืึธ) #ืค))");
  • ื ื™ื•ื ืึทืคื™ื™ื“ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึท ืกื˜ืจืึทืงื˜ืฉืขืจื“ ื“ืึทื˜ืŸ ื˜ื™ืคึผ ("ืจืขืงืึธืจื“ืก") ืื™ื– ืคืืจื’ืขืœื™ื™ื’ื˜;
  • ื•ื™ืกื ืขื ื”ืึทื ื“ืœื™ื ื’ ืคึผืจื™ืžื™ื˜ื™ื•ื•ื– (ื•ื•ืึทืจืคืŸ ืื•ืŸ ื›ืึทืคึผืŸ) ื”ืึธื‘ืŸ ืฉื•ื™ืŸ ืจื™ื•ื•ืขืจืงื˜;
  • ื“ื™ืคื™ื™ื ื“ ื‘ื™ื™ื ื“ื™ื ื’ื– ืคึฟืึทืจ ืขืงืกื˜ืขื ื“ืขื“ ืกื™ื ื˜ืึทืงืก "ืึทื ื“ืขืจืฉ", "=>", "..." ืื•ืŸ "_";
  • ืื™ืŸ http- ื‘ืขื˜ืŸ, http-get ืื•ืŸ ืื ื“ืขืจืข ืคึผืจืึธื•ืกื™ื“ื–ืฉืขืจื– ืฉื™ื™ึทื›ื•ืช ืฆื• ื“ื™ ื•ื•ืขื‘ ืงืœื™ืขื ื˜, ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืึธืคึผืœืึธื“ื™ืจืŸ ืื™ื ื”ืึทืœื˜ ืื™ื‘ืขืจ ืึท ื™ื ืงืจื™ืคึผื˜ื™ื“ ืงืึธืžื•ื ื™ืงืึทืฆื™ืข ืงืึทื ืึทืœ ื ื™ืฆืŸ TLS ืžื™ื˜ ืจื™ื›ื˜ื™ืง ื‘ืึทื•ื•ื™ื™ึทื–ืŸ ื•ื•ืขืจืึทืคืึทืงื™ื™ืฉืึทืŸ ืื™ื– ืฆื•ื’ืขื’ืขื‘ืŸ.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’