Gauche – R7RS Scheme жүзеге асыруы, өндірістік ортада скрипттер үшін жасалған. Жылдам жүктелу, жүйе интерфейсі, көптілділік қолдауы бар. BSD лицензиясы.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
Gauche – R7RS Scheme іске асырылымы. Ол өндірістік ортада скрипттер жасау үшін арналған. Бағдарламашылар мен жүйе әкімшілеріне күнделікті жұмысты қолдау үшін скрипттер жазуға мүмкіндік беру – оның мақсаты. Жылдам іске қосылу, кіріктірілген жүйе интерфейсі, түпкілікті көп тілдік қолдау оның негізгі дизайн мақсаттарының кейбірі. Gauche – BSD лицензиясы бойынша тегін бағдарламалық қамтамасы. Оны негізінен Широ Кавай дамытты.
Gauche is an R7RS Scheme implementation. It is designed for scripting in a production environment. It is intended to allow programmers and system administrators to write scripts in support of daily operations. Quick startup, built in system interface, native multilingual support are some of its key design goals. Gauche is free software under the BSD License. It is primarily developed by Shiro Kawai.
Ерекшеліктері
Жедел бастау Gauche өзінің орындалатын файлында жиі қолданылатын мүмкіндіктерді қамтиды, ал сирек қолданылатын функциялар қажет болғанда жүктелетін кітапханаларда сақталады. Модульдік жүйе STklos-қа API деңгейінде үйлесімді қарапайым модульдік жүйе. Объект жүйесі CLOS сияқты метаобъект протоколымен жабдықталған объект жүйесі. STklos-пен API бойынша дерлік толық үйлесімді. Сондай-ақ Guile-дің объект жүйесіне ұқсас. Түпкілікті көптілділік қолдауы Жіптер ішкі түрде көпбайттық жіптер ретінде ұсынылады. UTF-8, EUC-JP, Shift JIS немесе көпбайттық емес кодтаманы пайдалануға болады. Порт объектілері түпкілікті кодтау жүйесі мен сыртқы кодтау жүйесі арасында түрлендіруді қолдайды. Көпбайттық регекс Тәртіпті өрнек сәйкестендіргіші көпбайттық жіптерді түсінеді; үлгілерде де, сәйкес келетін жіптерде де көпбайттық таңбаларды қолдануға болады. Жүйелік интерфейс Gauche көптеген POSIX.1 жүйелік шақыруларын қолдайды. Желілік интерфейс ОС қолдаса, IPv6-ны қоса алғанда, сокетке негізделген желілік интерфейс үшін API ұсынады. Көпжіптілік pthreads негізінде көпжіптілікті қолдайды. Схема деңгейіндегі API SRFI 18 стандартына сәйкес келеді. DBM интерфейсі dbm, ndbm және/немесе gdbm интерфейстерін қамтиды. XML талдау Олег Киселевтің SXML құралдары енгізілген.
Quick startup Gauche includes common features in its executable, while less common functions are in libraries which are loaded on demand. Module system A simple module system, API compatible to STklos. Object system CLOS like object system with metaobject protocol. Almost API compatible to STklos. It is also similar to Guile's object system. Native multilingual support Strings are represented by multibyte string internally. You can use UTF 8, EUC JP, Shift JIS or no multibyte encoding. Conversion between native coding system and external coding system is supported by port objects. Multibyte regexp Regular expression matcher is aware of multibyte string; you can use multibyte characters both in patterns and matched strings. Built in system interface Gauche has built in support for most POSIX.1 system calls. Network interface Has API for socket based network interface, including IPv6 if the OS supports it. Multithreading Multithreading is supported on top of pthreads. Scheme level API conforms to SRFI 18. DBM interface Interfaces to dbm, ndbm and/or gdbm. XML parsing Oleg Kiselyov's SXML tools are included.