Scheme (programming language) (original) (raw)
- Scheme je multiparadigmatický programovací jazyk. Funkcionální programovací paradigma patří mezi tzv. funkcionální paradigmata. Scheme je jeden ze dvou hlavních dialektů funkcionálního programovacího jazyka Lisp. Jazyk navrhli Guy Lewis Steele a Gerald Jay Sussman a jeho první popis byl sepsán v roce 1975.Scheme byl představen akademickému světu skrze sérii článků, nyní známých jako Sussmanovy a Steelovy Lambda Papers. Jazyk Scheme definují dva standardy: oficiální IEEE standard a standard nazývaný Revisedn Report on the Algorithmic Language Scheme, ve zkratce RnRS, kde n je číslo revize. Současný standard je R5RS, a R6RS je ve vývoji. Oproti Lispu se Scheme snaží o minimalismus – poskytovat co nejmenší počet základních funkcí, na nichž jsou pak v knihovnách postaveny složitější konstrukce. Díky tomu má dosud poslední reference jazyka jen 50 stran. Scheme byl prvním dialektem Lispu, který nabízel volbu mezi lexikálním nebo dynamickým rozsahem platnosti proměnné. Také byl jedním z programovacích jazyků, který podporoval „first-class continuation“. Tento jazyk je v praxi používaný jen zřídka, používá se především ve školách pro výuku programování algoritmů.Nejznámější implementací je grafický editor GIMP, jehož dodatečné zásuvné moduly a skripty jsou psány v dialektu jazyka Scheme. (cs)
- El llenguatge de programació Scheme és un llenguatge funcional (si bé "impur", ja que, per exemple, les seves estructures de dades no són immutables) i un dialecte de Lisp. Fou desenvolupat per i en la dècada dels setanta i introduït en el món acadèmic a través d'una sèrie d'articles coneguts com el de Sussman i Steele. La filosofia de Scheme és decididament minimalista. El se objectiu no és acumular un gran nombre de funcionalitats, sinó d'evitar les debilitats y restriccions que fan necessària la seva addició. Així, Scheme proporciona el mínim nombre possible de nocions primitives, construït la resta basant-se en aquest reduït nombre d'abstraccions. Per exemple, el mecanisme principal pel control de flux són . Scheme fou el primer dialecte de Lisp que utilitzà (en lloc de ) de forma exclusiva. També fou un dels primers llenguatges de programació amb explícites. Scheme ofereix també gestió automàtica de memòria. Les llistes són l'estructura de dades bàsica del llenguatge, que també ofereix "arrays" entre els seus tipus predefinits. degut a la seva especificació minimalista, no hi ha sintaxi explícita per a crear registres o estructures, o per programació orientada a objectes, però moltes implementacions ofereixen les esmentades funcionalitats Scheme, originalment, s'anomenava "Schemer", continuant la tradició dels llenguatges i. El seu nom actual és a causa del fet que els seus autors utilitzaven el , que limitava la longitud dels noms de fitxers a 6 caràcters (ca)
- سكيم (بالإنجليزية: Scheme) (أي "المخطط")هي لغة برمجة وظيفية، وهي واحدة من أهم لهجتين للغة Lisp. على عكس اللهجة الرئيسية الأخرى Common Lisp، تتبع سكيم فلسفة الاعتدال في تصميمها حيث تحديد معيارا أساسا صغيرا مع أدوات قوية لتمديد اللغة. (ar)
- Η Scheme είναι η μια από τις δύο βασικές διαλέκτους της γλώσσας προγραμματισμού Lisp. Σε αντίθεση με την , την άλλη βασική διάλεκτο, η Scheme ακολουθεί μια μινιμαλιστική φιλοσοφία σχεδίασης, ορίζοντας ένα μικρό βασικό πυρήνα με ισχυρά εργαλεία για επέκταση της γλώσσας. Λόγω του μικρού της μεγέθους και της κομψότητάς της είναι δημοφιλής ανάμεσα στους εκπαιδευτικούς, τους σχεδιαστές γλωσσών, τους προγραμματιστές και τους ερασιτέχνες, και αυτή η ευρεία της διάδοση θεωρείται τόσο πλεονέκτημά της, όσο και μειονέκτημα, λόγω της ποικιλίας ανάμεσα στις υλοποιήσεις της. Η Scheme αναπτύχθηκε στο MIT AI Lab του MIT από τον και τον , οι οποίοι την παρουσίασαν στην ακαδημαϊκή κοινότητα μέσα από μια σειρά σημειωμάτων (memos), τα οποία σήμερα ονομάζονται "Lambda Papers", κατά την περίοδο 1975-1980. Η γλώσσα Scheme προτυποποιήθηκε σε επίσημο πρότυπο της , και σε ένα ντε φάκτο πρότυπο που ονομάζεται Αναθεωρημένηn Αναφορά πάνω στην Αλγοριθμική Γλώσσα Scheme (Revisedn Report on the Algorithmic Language Scheme ή RnRS). Το πρότυπο που υλοποιείται πιο συχνά είναι το R5RS (1998), και το 2007 αναγνωρίστηκε το νέο πρότυπο R6RS. Η Scheme ήταν η πρώτη διάλεκτος της Lisp που επέλεξε τη και η πρώτη που απαίτησε από τις υλοποιήσεις της να κάνουν βελτιστοποίηση κλήσης ουράς (tail-call optimization). Ήταν επίσης μια από τις πρώτες γλώσσες προγραμματισμού που υποστήριξαν συνέχειες πρώτης κλάσης. Επηρέασε σε μεγάλο βαθμό τις προσπάθειες που οδήγησαν στην ανάπτυξη της γλώσσας . (el)
- Die Programmiersprache Scheme ist eine Lisp-Variante.Sie ist funktional, unterstützt jedoch auch andere Programmierparadigmen (z. B. imperative Programmierung). Scheme zeichnet sich dadurch aus, dass nur wenige Programmierkonzepte durch die Syntax vorgegeben sind.In Scheme gibt es daher verhältnismäßig viele Möglichkeiten, ein Programm zu beschreiben. Beispielsweise gibt es im Scheme-Standard keine Hilfsmittel zur objektorientierten Programmierung, es ist aber aufgrund von Makros und λ-Ausdrücken sehr einfach, solche in der Sprache zu programmieren: Scheme ist eine programmierbare Programmiersprache, die im Nachhinein erweitert werden kann. Entwickelt wurde Scheme von Gerald Jay Sussman und Guy Lewis Steele Jr. am Massachusetts Institute of Technology, wo auch die formale Spezifikation zur Verfügung steht, der sogenannte . Die derzeit aktuelle Spezifikation ist R7RS. (de)
- Scheme (aŭ Skimo) estas la funkcia programlingvo, kreita de Guy L. Steele kaj Gerald G. Sussman je 1975, unu el du la plej popularaj dialektoj de Lisp (la alia populara Lispa dialekto estas ). Ĝia baza ideo estas minimumeco. Anstataŭ amasigi trajtojn unu post la alia, Scheme provizas kiel eble malmulte primitivajn nociojn, sed ebligas facile efektivigi ĉion super ili. (eo)
- Scheme es un lenguaje de programación funcional (si bien impuro pues sus estructuras de datos no son inmutables) y un dialecto de Lisp. Fue desarrollado por y en la década de los setenta e introducido en el mundo académico a través de una serie de artículos conocidos como los de Sussman y Steele. La filosofía de Scheme es minimalista. Su objetivo no es acumular un gran número de funcionalidades, sino evitar las debilidades y restricciones que hacen necesaria su adición. Así, Scheme proporciona el mínimo número posible de nociones primitivas, construyendo todo lo demás a partir de un reducido número de abstracciones. Por ejemplo, el mecanismo principal para el control de flujo son las llamadas recursivas. Scheme fue el primer dialecto de Lisp que usó ámbito estático, también conocido como ámbito léxico, (en lugar de dinámico) de forma exclusiva. También fue uno de los primeros lenguajes de programación con explícitas, un mecanismo para guardar y usar el estado entero de un programa en un momento determinado. Scheme ofrece también gestión automática de memoria (recolección de basura). Las listas son la estructura de datos básica del lenguaje, que también ofrece arrays entre sus tipos predefinidos. Debido a su especificación minimalista, no hay sintaxis explícita para crear registros o estructuras, o para programación orientada a objetos, pero muchas implementaciones ofrecen dichas funcionalidades. Scheme se llamaba originalmente "Schemer", siguiendo la tradición de los lenguajes Planner y . Su nombre actual es debido a que sus autores usaban el sistema operativo ITS, que limitaba la longitud de los nombres de fichero a 6 caracteres. (es)
- Scheme is a dialect of the Lisp family of programming languages. Scheme was created during the 1970s at the MIT AI Lab and released by its developers, Guy L. Steele and Gerald Jay Sussman, via a series of memos now known as the Lambda Papers. It was the first dialect of Lisp to choose lexical scope and the first to require implementations to perform tail-call optimization, giving stronger support for functional programming and associated techniques such as recursive algorithms. It was also one of the first programming languages to support first-class continuations. It had a significant influence on the effort that led to the development of Common Lisp. The Scheme language is standardized in the official IEEE standard and a de facto standard called the Revisedn Report on the Algorithmic Language Scheme (RnRS). A widely implemented standard is R5RS (1998). The most recently ratified standard of Scheme is "R7RS-small" (2013). The more expansive and modular R6RS was ratified in 2007. Both trace their descent from R5RS; the timeline below reflects the chronological order of ratification. (en)
- Scheme (prononciation : /skim/) est un langage de programmation dérivé du langage fonctionnel Lisp, créé dans les années 1970 au Massachusetts Institute of Technology (MIT) par Gerald Jay Sussman et Guy L. Steele. Le but des créateurs du langage était d'épurer le Lisp en conservant les aspects essentiels, la flexibilité et la puissance expressive. Scheme a donc une syntaxe extrêmement simple, avec un nombre très limité de mots-clés. Comme en Lisp, la notation préfixée permet de s'affranchir d'une précédence des opérateurs.De plus, la puissance des macros de Scheme lui permet de s'adapter à n'importe quel problème, notamment de le rendre orienté objet et donc multi-paradigme. La spécification de Scheme précise que toutes les implémentations doivent optimiser le cas de la récursion terminale. Les types de données de base de Scheme sont les booléens, les nombres, qui peuvent être entiers de taille indéfinie, rationnels ou complexes, les caractères ou les symboles, qui sont des variables. À ceux-là s'ajoutent des types de données composites suivants : chaînes de caractères, vecteurs, paires orientées, listes, listes associatives, tables de hachage et un type particulier générique, la S-expression, dont tous les autres types dérivent, rendant possible la métaprogrammation, c'est-à-dire la possibilité d'étendre le langage avec de nouveaux . (fr)
- Scheme(スキーム)はコンピュータ・プログラミング言語 LISPの方言のひとつで、静的スコープなどが特徴である。仕様(2017年現在、改7版まで存在する)を指すこともあれば、実装を指すこともある。Schemeにより、LISP方言に静的スコープが広められた。 (ja)
- Scheme è un linguaggio di programmazione funzionale, un dialetto del Lisp di cui mantiene tutte le caratteristiche, che è stato sviluppato negli anni settanta da e Gerald Jay Sussman, che lo introdussero nel mondo accademico con una serie di articoli noti come le e nel libro Structure and Interpretation of Computer Programs, usato per decenni come testo in alcuni esami di Scienze dell'Informazione. Il desktop manager GNOME incorpora l'interprete Scheme Guile. (it)
- 스킴 프로그래밍 언어(Scheme)는 함수형 프로그래밍과 절차적 프로그래밍을 지원하는 다중패러다임 프로그래밍 언어로, 리스프(LISP)의 방언(변종 언어)이다. 1970년대 Guy Lewis Steele Jr. 과 Gerald Jay Sussman 에 의해서 개발되었다. 다른 LISP 방언과 비교할 때 단순함이 특징이다. 전통적인 LISP과 가장 큰 차이점은 동적 영역 규칙 대신 정적 영역 규칙을 사용하고 있다는 것이다. 반복문을 지원하지 않기 때문에 재귀함수를 이용하여 반복 계산을 처리한다. 따라서 대부분의 스킴 구현은 꼬리호출 최적화(tail-call optimization)를 수행한다. (ko)
- Scheme is een functionele programmeertaal. Het is een dialect van de programmeertaal Lisp. Guy L. Steele en ontwikkelden het in de jaren zeventig en presenteerden het aan de academische wereld in de zogenaamde Lambda Papers. De taal is gebaseerd op de lambdacalculus. De taal heette oorspronkelijk 'Schemer', in de traditie van talen als en , maar werd ingekort door de beperkingen van het -besturingssysteem dat geen bestandsnamen toeliet van meer dan 6 tekens. De filosofie achter Scheme is . Het doel is niet om uitbreiding op uitbreiding te stapelen, maar om zwakheden en beperkingen te verwijderen die uitbreidingen nodig schijnen te maken. Daarom heeft Scheme zo min mogelijk primitieven waarmee de rest geïmplementeerd kan worden. Het belangrijkste mechanisme voor control flow is staartrecursie. Scheme was de eerste variant van Lisp die uitsluitend lexicaal variabelenbereik (in tegenstelling tot dynamisch variabelenbereik) gebruikte. Net zoals Lisp, gebruikt Scheme garbage collection om geheugenplaatsen met ongebruikte data te hergebruiken. De taal gebruikt lijsten als belangrijke datastructuur, maar kent daarnaast vele andere. Door het minimalisme van de Scheme-specificatie bestaat er geen standaardsyntaxis voor het maken van structuren met benoemde velden, of ondersteuning voor object-georiënteerd programmeren, maar bijna elke implementatie ondersteunt deze uitbreidingen. Kenmerkend aan Scheme is dat het gebruikmaakt van prefixnotatie van bewerkingen in plaats van het meestgebruikte infix. Bijvoorbeeld 3+5 is een infixnotatie voor de optelling (de operator + bevindt zich tussen de 3 en de 5) terwijl + 3 5 de prefixnotatie is waarbij de operator (+) zich voor de twee operanden bevindt (3 en 5). (nl)
- Scheme – funkcyjny język programowania, dialekt (wariant) Lispu, który został zaprojektowany na MIT przez i w latach 70. Jego główną ideą jest minimalizm, co oznacza, że sam język zawiera jedynie podstawowe mechanizmy, a na ich bazie, już z użyciem Scheme, tworzone są bardziej zaawansowane rozwiązania. Scheme nie jest czysto funkcyjnym językiem programowania, co oznacza, że dopuszczalne są efekty uboczne obliczeń. Scheme umożliwia również tworzenie programów w stylu proceduralnym i obiektowym. Jest to język o dynamicznym systemie typów. Zarządzanie pamięcią jest w pełni automatyczne. Scheme był pierwszym dialektem Lispu, który używał zmiennych leksykalnych i pierwszym, który wymagał od implementacji optymalizacji wywołań z rekurencją ogonową. Scheme jest ustandaryzowany przez organizację IEEE oraz przez dokumenty Revisedn Report on the Algorithmic Language Scheme (RnRS), z których najczęściej implementowane są R5RS z 1998 roku, R6RS z 2007 roku oraz najnowszy R7RS (small) z 2013 roku. (pl)
- Scheme är en dialekt av programspråket Lisp, utvecklad av och på MIT någon gång på 1970-talet. Scheme är vid sidan av Common Lisp den viktigaste Lisp-dialekten. Filosofin bakom språket är minimalistisk, det finns väldigt begränsade programbibliotek så användaren får själv skapa de flesta funktioner från grunden. Scheme används i undervisningssyfte på flera universitet runt om i världen (tidigare även i Sverige). bland annat KTH. Många kurser använder sig av Sussmans bok Structure and Interpretation of Computer Programs. Scheme använder sig enligt språkdefinitionen av svansrekursion . Det blir på så sätt lätt att göra en iterativ process av en rekursiv funktion. (sv)
- Scheme é uma linguagem de programação multiparadigma que suporta programação funcional e procedural. Foi criada por Guy L. Steele e Gerald Jay Sussman no outono de 1975, a partir da linguagem Lisp com o intuito de estudar a teoria dos atores de Carl Hewitt. O modelo de Hewitt era orientado a objeto (e influenciado pelo Smalltalk). Os objetos eram chamados atores e as mensagens eram também atores. Sussman e Steele tiveram algum problema no entender algumas das consequências do modelo a partir dos artigos de Hewitt e decidiram construir uma implementação de brinquedo de uma linguagem de atores visando experimentá-la. Escreveram um pequeno interpretador Lisp e adicionaram os mecanismos necessários para a criação de atores e envio de mensagens. Existem dois padrões que definem a linguagem Scheme: o padrão oficial IEEE e um padrão popular chamado "Revisedn Report on the Algorithmic Language Scheme", abreviado como RnRS, onde n é o número de revisões. Scheme é uma linguagem multiparadigma baseado no cálculo lambda. Serão apresentadas as características marcantes e alguns exemplos de códigos, ilustrando sua eficiência. É uma das descendentes da linguagem Lisp, compartilhando a maior parte de sua sintaxe, mas fornece regras léxicas ao invés de regras de escopo dinâmico. (pt)
- Scheme — мультипарадигмова мова програмування, підтримує функціональну та процедурну парадигми програмування. Словник мови можна розширювати засобами самої мови. Існують розширення, які додають підтримку об'єктно-орієнтованої, декларативної і інших парадигм програмування. Є діалектом мови програмування Лісп. (uk)
- Scheme是一种函数式编程语言,是Lisp的两种主要方言之一,不同于与之并列的Common Lisp,Scheme遵循哲学,以一个小型语言核心作为标准,加上各种强力语言工具(语法糖)来扩展语言本身。Scheme是第一個使用靜態作用域的Lisp方言,也是第一个引入头等续体和“干净宏”的编程语言。 (zh)
- Scheme [skiːm] — функциональный язык программирования, один из трёх наиболее популярных диалектов Лиспа (наряду с Common Lisp и Clojure). Создан в середине 1970-х годов исследователями Массачусетского технологического института (англ. Guy L. Steele) и (англ. Gerald Jay Sussman). Обладает минималистичным дизайном, содержит минимум примитивных конструкций и позволяет выразить всё необходимое путём надстройки над ними. Например, использует всего два механизма организации циклов — хвостовую рекурсию и итеративный подход (в котором используются временные переменные для сохранения промежуточного результата). Язык начинался с попытки реализовать модель акторов Карла Хьюитта, для чего Стил и Сассман написали «крошечный интерпретатор Лиспа», а затем «добавили механизм создания акторов и посылки сообщений». Scheme стал первым диалектом Лиспа, применяющим исключительно статические (а не динамические) области видимости переменных, что гарантировало оптимизацию хвостовой рекурсии и обеспечило поддержку булевского типа (#t и #f вместо традиционных T и NIL). Также стал одним из первых языков с поддержкой продолжений. Начиная со спецификации R⁵RS, язык приобрёл средство для записи макросов на основе шаблонов синтаксического преобразования с «соблюдением гигиены» (англ. hygienic macro). Предусматривается «сборка мусора» (автоматическое освобождение памяти от неиспользуемых более объектов). В качестве базовых структур данных язык использует списки и одномерные массивы («векторы»). В соответствии с декларируемым минимализмом, (пока) нет стандартного синтаксиса для поддержки структур с именованными полями, а также средств ООП — все это может быть реализовано программистом по его предпочтению, хотя большинство реализаций языка предлагают готовые механизмы. Первоначальное название языка — Schemer, было изменено из-за ограничения на длину имён файлов в ; (англ. schemer — «авантюрист», «комбинатор»; видимо, намёк на другие лиспообразные языки, вышедшие из MIT — Planner (в одном из значений — «прожектёр») и («потворщик»)). Значительный вклад в популяризацию языка внесла книга Абельсона и Сассмана «Структура и интерпретация компьютерных программ», длительное время использовавшаяся как базовый учебник программирования в Массачуссетском технологическом институте. (ru)
- dbr:Python_(programming_language)
- dbr:Ruby_(programming_language)
- dbr:Scala_(programming_language)
- dbr:Hop_(software)
- dbr:Julia_(programming_language)
- dbr:Common_Lisp
- dbr:Rust_(programming_language)
- dbr:Clojure
- dbr:MultiLisp
- dbr:Lua_(programming_language)
- dbr:Dylan_(programming_language)
- dbr:EuLisp
- dbr:Haskell_(programming_language)
- dbr:JavaScript
- dbr:T_(programming_language)
- dbr:R_(programming_language)
- dbr:Racket_(programming_language)
- dbr:S_(programming_language)
- dbt:Authority_control
- dbt:Citation_needed
- dbt:Cite_web
- dbt:Commons_category-inline
- dbt:Curlie
- dbt:Further
- dbt:Infobox_programming_language
- dbt:Lisp
- dbt:Lisp_programming_language
- dbt:Main
- dbt:Mono
- dbt:Portal
- dbt:Reflist
- dbt:See_also
- dbt:Short_description
- dbt:Start_date_and_age
- dbt:Unreferenced_section
- dbt:Cite_wikisource
- dbt:Padlsup
- dbt:Maincat
- dbt:Wikibooks-inline
- سكيم (بالإنجليزية: Scheme) (أي "المخطط")هي لغة برمجة وظيفية، وهي واحدة من أهم لهجتين للغة Lisp. على عكس اللهجة الرئيسية الأخرى Common Lisp، تتبع سكيم فلسفة الاعتدال في تصميمها حيث تحديد معيارا أساسا صغيرا مع أدوات قوية لتمديد اللغة. (ar)
- Scheme (aŭ Skimo) estas la funkcia programlingvo, kreita de Guy L. Steele kaj Gerald G. Sussman je 1975, unu el du la plej popularaj dialektoj de Lisp (la alia populara Lispa dialekto estas ). Ĝia baza ideo estas minimumeco. Anstataŭ amasigi trajtojn unu post la alia, Scheme provizas kiel eble malmulte primitivajn nociojn, sed ebligas facile efektivigi ĉion super ili. (eo)
- Scheme(スキーム)はコンピュータ・プログラミング言語 LISPの方言のひとつで、静的スコープなどが特徴である。仕様(2017年現在、改7版まで存在する)を指すこともあれば、実装を指すこともある。Schemeにより、LISP方言に静的スコープが広められた。 (ja)
- Scheme è un linguaggio di programmazione funzionale, un dialetto del Lisp di cui mantiene tutte le caratteristiche, che è stato sviluppato negli anni settanta da e Gerald Jay Sussman, che lo introdussero nel mondo accademico con una serie di articoli noti come le e nel libro Structure and Interpretation of Computer Programs, usato per decenni come testo in alcuni esami di Scienze dell'Informazione. Il desktop manager GNOME incorpora l'interprete Scheme Guile. (it)
- 스킴 프로그래밍 언어(Scheme)는 함수형 프로그래밍과 절차적 프로그래밍을 지원하는 다중패러다임 프로그래밍 언어로, 리스프(LISP)의 방언(변종 언어)이다. 1970년대 Guy Lewis Steele Jr. 과 Gerald Jay Sussman 에 의해서 개발되었다. 다른 LISP 방언과 비교할 때 단순함이 특징이다. 전통적인 LISP과 가장 큰 차이점은 동적 영역 규칙 대신 정적 영역 규칙을 사용하고 있다는 것이다. 반복문을 지원하지 않기 때문에 재귀함수를 이용하여 반복 계산을 처리한다. 따라서 대부분의 스킴 구현은 꼬리호출 최적화(tail-call optimization)를 수행한다. (ko)
- Scheme — мультипарадигмова мова програмування, підтримує функціональну та процедурну парадигми програмування. Словник мови можна розширювати засобами самої мови. Існують розширення, які додають підтримку об'єктно-орієнтованої, декларативної і інших парадигм програмування. Є діалектом мови програмування Лісп. (uk)
- Scheme是一种函数式编程语言,是Lisp的两种主要方言之一,不同于与之并列的Common Lisp,Scheme遵循哲学,以一个小型语言核心作为标准,加上各种强力语言工具(语法糖)来扩展语言本身。Scheme是第一個使用靜態作用域的Lisp方言,也是第一个引入头等续体和“干净宏”的编程语言。 (zh)
- El llenguatge de programació Scheme és un llenguatge funcional (si bé "impur", ja que, per exemple, les seves estructures de dades no són immutables) i un dialecte de Lisp. Fou desenvolupat per i en la dècada dels setanta i introduït en el món acadèmic a través d'una sèrie d'articles coneguts com el de Sussman i Steele. Scheme fou el primer dialecte de Lisp que utilitzà (en lloc de ) de forma exclusiva. També fou un dels primers llenguatges de programació amb explícites. Scheme ofereix també gestió automàtica de memòria. (ca)
- Scheme je multiparadigmatický programovací jazyk. Funkcionální programovací paradigma patří mezi tzv. funkcionální paradigmata. Scheme je jeden ze dvou hlavních dialektů funkcionálního programovacího jazyka Lisp. Jazyk navrhli Guy Lewis Steele a Gerald Jay Sussman a jeho první popis byl sepsán v roce 1975.Scheme byl představen akademickému světu skrze sérii článků, nyní známých jako Sussmanovy a Steelovy Lambda Papers. Jazyk Scheme definují dva standardy: oficiální IEEE standard a standard nazývaný Revisedn Report on the Algorithmic Language Scheme, ve zkratce RnRS, kde n je číslo revize. Současný standard je R5RS, a R6RS je ve vývoji. (cs)
- Η Scheme είναι η μια από τις δύο βασικές διαλέκτους της γλώσσας προγραμματισμού Lisp. Σε αντίθεση με την , την άλλη βασική διάλεκτο, η Scheme ακολουθεί μια μινιμαλιστική φιλοσοφία σχεδίασης, ορίζοντας ένα μικρό βασικό πυρήνα με ισχυρά εργαλεία για επέκταση της γλώσσας. Λόγω του μικρού της μεγέθους και της κομψότητάς της είναι δημοφιλής ανάμεσα στους εκπαιδευτικούς, τους σχεδιαστές γλωσσών, τους προγραμματιστές και τους ερασιτέχνες, και αυτή η ευρεία της διάδοση θεωρείται τόσο πλεονέκτημά της, όσο και μειονέκτημα, λόγω της ποικιλίας ανάμεσα στις υλοποιήσεις της. (el)
- Scheme es un lenguaje de programación funcional (si bien impuro pues sus estructuras de datos no son inmutables) y un dialecto de Lisp. Fue desarrollado por y en la década de los setenta e introducido en el mundo académico a través de una serie de artículos conocidos como los de Sussman y Steele. Scheme se llamaba originalmente "Schemer", siguiendo la tradición de los lenguajes Planner y . Su nombre actual es debido a que sus autores usaban el sistema operativo ITS, que limitaba la longitud de los nombres de fichero a 6 caracteres. (es)
- Die Programmiersprache Scheme ist eine Lisp-Variante.Sie ist funktional, unterstützt jedoch auch andere Programmierparadigmen (z. B. imperative Programmierung). Scheme zeichnet sich dadurch aus, dass nur wenige Programmierkonzepte durch die Syntax vorgegeben sind.In Scheme gibt es daher verhältnismäßig viele Möglichkeiten, ein Programm zu beschreiben. Entwickelt wurde Scheme von Gerald Jay Sussman und Guy Lewis Steele Jr. am Massachusetts Institute of Technology, wo auch die formale Spezifikation zur Verfügung steht, der sogenannte . Die derzeit aktuelle Spezifikation ist R7RS. (de)
- Scheme is a dialect of the Lisp family of programming languages. Scheme was created during the 1970s at the MIT AI Lab and released by its developers, Guy L. Steele and Gerald Jay Sussman, via a series of memos now known as the Lambda Papers. It was the first dialect of Lisp to choose lexical scope and the first to require implementations to perform tail-call optimization, giving stronger support for functional programming and associated techniques such as recursive algorithms. It was also one of the first programming languages to support first-class continuations. It had a significant influence on the effort that led to the development of Common Lisp. (en)
- Scheme (prononciation : /skim/) est un langage de programmation dérivé du langage fonctionnel Lisp, créé dans les années 1970 au Massachusetts Institute of Technology (MIT) par Gerald Jay Sussman et Guy L. Steele. La spécification de Scheme précise que toutes les implémentations doivent optimiser le cas de la récursion terminale. Les types de données de base de Scheme sont les booléens, les nombres, qui peuvent être entiers de taille indéfinie, rationnels ou complexes, les caractères ou les symboles, qui sont des variables. (fr)
- Scheme is een functionele programmeertaal. Het is een dialect van de programmeertaal Lisp. Guy L. Steele en ontwikkelden het in de jaren zeventig en presenteerden het aan de academische wereld in de zogenaamde Lambda Papers. De taal is gebaseerd op de lambdacalculus. De taal heette oorspronkelijk 'Schemer', in de traditie van talen als en , maar werd ingekort door de beperkingen van het -besturingssysteem dat geen bestandsnamen toeliet van meer dan 6 tekens. (nl)
- Scheme – funkcyjny język programowania, dialekt (wariant) Lispu, który został zaprojektowany na MIT przez i w latach 70. Jego główną ideą jest minimalizm, co oznacza, że sam język zawiera jedynie podstawowe mechanizmy, a na ich bazie, już z użyciem Scheme, tworzone są bardziej zaawansowane rozwiązania. Scheme nie jest czysto funkcyjnym językiem programowania, co oznacza, że dopuszczalne są efekty uboczne obliczeń. Scheme umożliwia również tworzenie programów w stylu proceduralnym i obiektowym. Jest to język o dynamicznym systemie typów. Zarządzanie pamięcią jest w pełni automatyczne. Scheme był pierwszym dialektem Lispu, który używał zmiennych leksykalnych i pierwszym, który wymagał od implementacji optymalizacji wywołań z rekurencją ogonową. (pl)
- Scheme [skiːm] — функциональный язык программирования, один из трёх наиболее популярных диалектов Лиспа (наряду с Common Lisp и Clojure). Создан в середине 1970-х годов исследователями Массачусетского технологического института (англ. Guy L. Steele) и (англ. Gerald Jay Sussman). (ru)
- Scheme é uma linguagem de programação multiparadigma que suporta programação funcional e procedural. Foi criada por Guy L. Steele e Gerald Jay Sussman no outono de 1975, a partir da linguagem Lisp com o intuito de estudar a teoria dos atores de Carl Hewitt. O modelo de Hewitt era orientado a objeto (e influenciado pelo Smalltalk). Os objetos eram chamados atores e as mensagens eram também atores. Sussman e Steele tiveram algum problema no entender algumas das consequências do modelo a partir dos artigos de Hewitt e decidiram construir uma implementação de brinquedo de uma linguagem de atores visando experimentá-la. Escreveram um pequeno interpretador Lisp e adicionaram os mecanismos necessários para a criação de atores e envio de mensagens. Existem dois padrões que definem a linguagem Sche (pt)
- Scheme är en dialekt av programspråket Lisp, utvecklad av och på MIT någon gång på 1970-talet. Scheme är vid sidan av Common Lisp den viktigaste Lisp-dialekten. Filosofin bakom språket är minimalistisk, det finns väldigt begränsade programbibliotek så användaren får själv skapa de flesta funktioner från grunden. Scheme används i undervisningssyfte på flera universitet runt om i världen (tidigare även i Sverige). bland annat KTH. Många kurser använder sig av Sussmans bok Structure and Interpretation of Computer Programs. (sv)
- dbr:Lisp_(programming_language)
- dbr:Comment_(computer_programming)
- dbr:Lazy_evaluation
- dbr:Relational_operator
- dbr:Lambda_calculus
- dbr:Scope_(programming)
is dbo:wikiPageWikiLink of
- dbr:Cairo_(graphics)
- dbr:Amiga_programming_languages
- dbr:Bayesian_programming
- dbr:Programming_paradigm
- dbr:Psyco
- dbr:Pure_Data
- dbr:Pvts
- dbr:Python_(programming_language)
- dbr:Q_(programming_language_from_Kx_Systems)
- dbr:Question_mark
- dbr:QuickCheck
- dbr:Rosetta_Code
- dbr:Sam_Hocevar
- dbr:Sather
- dbr:Scala_(programming_language)
- dbr:Scheme_(language)
- dbr:Scheme_48
- dbr:Engine_(computer_science)
- dbr:List_of_arbitrary-precision_arithmetic_software
- dbr:List_of_audio_programming_languages
- dbr:List_of_computer_scientists
- dbr:List_of_file_formats
- dbr:List_of_functional_programming_topics
- dbr:Memoization
- dbr:M-expression
- dbr:MIT_Electrical_Engineering_and_Computer_Science_Department
- dbr:MLisp
- dbr:Metalinguistic_abstraction
- dbr:Tail_call
- dbr:Probabilistic_programming
- dbr:Bigloo
- dbr:Binomial_coefficient
- dbr:Boolean_data_type
- dbr:Brendan_Eich
- dbr:Declarative_programming
- dbr:Denemo
- dbr:Dependent_type
- dbr:Append
- dbr:Apply
- dbr:History_of_the_Actor_model
- dbr:Hop_(software)
- dbr:How_to_Design_Programs
- dbr:Join-pattern
- dbr:Julia_(programming_language)
- dbr:List_of_C-family_programming_languages
- dbr:List_of_important_publications_in_computer_science
- dbr:Remainder
- dbr:Currying
- dbr:Università_della_Svizzera_italiana
- dbr:Unix_shell
- dbr:Unlambda
- dbr:Incremental_compiler
- dbr:Indirect_self-reference
- dbr:Inlab_Software_GmbH
- dbr:Institute_for_Personal_Robots_in_Education
- dbr:Integer_overflow
- dbr:Interpreter_(computing)
- dbr:Let_expression
- dbr:Library_of_Congress_Classification:Class_Q_--_Science
- dbr:Lightweight_programming_language
- dbr:List_of_language_bindings_for_Qt_4
- dbr:List_of_language_bindings_for_Qt_5
- dbr:List_of_programmers
- dbr:List_of_programming_language_researchers
- dbr:List_of_programming_languages
- dbr:List_of_programming_languages_by_type
- dbr:List_of_reflective_programming_languages_and_platforms
- dbr:Otsu's_method
- dbr:Programming_language_specification
- dbr:Numerical_tower
- dbr:Preprocessor
- dbr:Short-circuit_evaluation
- dbr:Peirce's_law
- dbr:Common_Lisp
- dbr:Comparison_of_Internet_Relay_Chat_clients
- dbr:Comparison_of_Linux_distributions
- dbr:Comparison_of_audio_synthesis_environments
- dbr:Comparison_of_code_generation_tools
- dbr:Comparison_of_programming_languages_(array)
- dbr:Comparison_of_programming_languages_(basic_instructions)
- dbr:Compiler
- dbr:Concurrent_computing
- dbr:Conditional_(computer_programming)
- dbr:Constant_(computer_programming)
- dbr:Cron
- dbr:MathML
- dbr:Matthias_Felleisen
- dbr:Rust_(programming_language)
- dbr:SCM_(Scheme_implementation)
- dbr:SIOD
- dbr:SLIB
- dbr:SLIME
- dbr:STklos
- dbr:SWIG
- dbr:SXML
- dbr:Escape_analysis
- dbr:Essentials_of_Programming_Languages
- dbr:Generational_list_of_programming_languages
- dbr:Generic_programming
- dbr:Name_resolution_(programming_languages)
- dbr:Oaklisp
- dbr:Quantum_programming
- dbr:R5RS
- dbr:Clojure
- dbr:Emacs_Lisp
- dbr:French_Institute_for_Research_in_Computer_Science_and_Automation
- dbr:GIMP
- dbr:GNU_Guile
- dbr:GNU_Guix_System
- dbr:GNU_TeXmacs
- dbr:GNUstep
- dbr:Gambit_(Scheme_implementation)
- dbr:Game_Oriented_Assembly_Lisp
- dbr:Gauche_(Scheme_implementation)
- dbr:George_Springer_(mathematician)
- dbr:Gerald_Jay_Sussman
- dbr:Glossary_of_computer_science
- dbr:GnuCash
- dbr:Google_Chrome_Experiments
- dbr:Mobile_app_development
- dbr:Modulo_operation
- dbr:Monad_(functional_programming)
- dbr:MultiLisp
- dbr:NIL_(programming_language)
- dbr:Cons
- dbr:Continuation
- dbr:Continuation-passing_style
- dbr:Control_flow
- dbr:Control_flow_analysis
- dbr:Coroutine
- dbr:CosmicOS
- dbr:Dangling_else
- dbr:SPOJ
- dbr:Andrew_Plotkin
- dbr:Anonymous_function
- dbr:App_Inventor_for_Android
- dbr:Applesoft_BASIC
- dbr:Arc_(programming_language)
- dbr:Arithmetic_shift
- dbr:LilyPond
- dbr:Linux
- dbr:LispMe
- dbr:Lisp_(programming_language)
- dbr:Lua_(programming_language)
- dbr:MDL_(programming_language)
- dbr:MIT/GNU_Scheme
- dbr:MUSIC-N
- dbr:Maciej_Stachowiak
- dbr:Maclisp
- dbr:MacroML
- dbr:Cadence_SKILL
- dbr:Call-with-current-continuation
- dbr:Call_stack
- dbr:Callback_(computer_programming)
- dbr:Siag_Office
- dbr:Smarterphone
- dbr:Snap!_(programming_language)
- dbr:Stalin_(Scheme_implementation)
- dbr:Standard_Generalized_Markup_Language
- dbr:Stream_(computing)
- dbr:Strict_programming_language
- dbr:Structure_and_Interpretation_of_Computer_Programs
- dbr:Closure_(computer_programming)
- dbr:Command_substitution
- dbr:Common_Lisp_Music
- dbr:Comparison_of_functional_programming_languages
- dbr:Comparison_of_open-source_programming_language_licensing
- dbr:Comparison_of_parser_generators
- dbr:Comparison_of_programming_languages
- dbr:Comparison_of_programming_languages_(associative_array)
- dbr:Comparison_of_programming_languages_(string_functions)
- dbr:Comparison_of_programming_languages_(syntax)
- dbr:Comparison_of_programming_languages_by_type_system
- dbr:Complex_data_type
- dbr:Delimited_continuation
- dbr:Ypsilon_(Scheme_implementation)
- dbr:Funarg_problem
- dbr:Function_composition_(computer_science)
- dbr:Function_object
- dbr:Functional_programming
- dbr:Polymorphism_(computer_science)
- dbr:Programming_language_theory
- dbr:Stack_overflow
- dbr:Symbol_(programming)
- dbr:Standard_library
- dbr:Mutual_recursion
- dbr:Simple_Common_Gateway_Interface
- dbr:Backtick
- dbr:Timeline_of_programming_languages
- dbr:TinyScheme
- dbr:TkWWW
- dbr:WeeChat
- dbr:Do_while_loop
- dbr:Document_Style_Semantics_and_Specification_Language
- dbr:Dr._Dobb's_Excellence_in_Programming_Award
- dbr:Futures_and_promises
- dbr:Hash_consing
- dbr:Language_binding
- dbr:Latent_typing
- dbr:Lazy_evaluation
- dbr:Linked_list
- dbr:List_(abstract_data_type)
- dbr:List_of_CLI_languages
- dbr:MiniKanren
- dbr:Qalb_(programming_language)
- dbr:TracePro
- dbr:ALGOL
- dbr:ALGOL_60
- dbr:Allegro_(software_library)
- dbr:AmbientTalk
- dbr:Cygwin
- dbr:Daniel_P._Friedman
- dbr:Dylan_(programming_language)
- dbr:Dynamic_Language_Runtime
- dbr:Dynamic_programming
- dbr:ECMAScript
- dbr:Earley_parser
- dbr:Eclipse_(software)
- dbr:EuLisp
- dbr:Exclamation_mark
- dbr:Extempore_(software)
- dbr:Factor_(programming_language)
- dbr:Festival_Speech_Synthesis_System
- dbr:Fexpr
- dbr:Fluxus_(programming_environment)
- dbr:Fortress_(programming_language)
- dbr:Non-English-based_programming_languages
- dbr:Notepad++
- dbr:Number_sign
- dbr:Palm_OS
- dbr:Parrot_virtual_machine
- dbr:Carl_Hewitt
- dbr:Flow-sensitive_typing
- dbr:Fold_(higher-order_function)
- dbr:Gopher_(protocol)
- dbr:Goto
- dbr:History_of_programming_languages
- dbr:History_of_software
- dbr:History_of_the_Scheme_programming_language
- dbr:Dr_Scheme
- dbr:Iteration
- dbr:John_W._Cowan
- dbr:Joy_(programming_language)
- dbr:Knights_of_the_Lambda_Calculus
- dbr:William_Clinger_(computer_scientist)
- dbr:List_of_GNU_packages
- dbr:List_of_JVM_languages
- dbr:List_of_Lisp-family_programming_languages
- dbr:List_of_Massachusetts_Institute_of_Technology_faculty
- dbr:R._Kent_Dybvig
- dbr:S-expression
- dbr:Matthew_Flatt
- dbr:Primitive_data_type
- dbr:Procedural_programming
- dbr:Quine_(computing)
- dbr:Reference_(computer_science)
- dbr:Reification_(computer_science)
- dbr:Relational_operator
- dbr:Resource_management_(computing)
- dbr:Guy_L._Steele_Jr.
- dbr:Hal_Abelson
- dbr:Haskell
- dbr:Iota_and_Jot
- dbr:IronScheme
- dbr:JScheme
- dbr:JavaScript
- dbr:Tea_(programming_language)
- dbr:Texas_Instruments
- dbr:Hygienic_macro
- dbr:Robert_Bruce_Findler
- dbr:XLISP
- dbr:ARS++
- dbr:ARS-based_programming
- dbr:Abstraction_(computer_science)
- dbr:Chez_Scheme
- dbr:Chicken_(Scheme_implementation)
- dbr:John_McCarthy_(computer_scientist)
- dbr:K_(programming_language)
- dbr:Kawa_(Scheme_implementation)
- dbr:Kent_Pitman
- dbr:LFE_(programming_language)
- dbr:LambdaNative
- dbr:Lambda_calculus
- dbr:Larceny_(Scheme_implementation)
- dbr:Block_(programming)
- dbr:SuperCollider
- dbr:Syntactic_sugar
- dbr:T_(programming_language)
- dbr:Higher-order_programming
- dbr:Homoiconicity
- dbr:Java_bytecode
- dbr:Technology_Square_(Cambridge,_Massachusetts)
- dbr:Tournament_sort
- dbr:While_loop
- dbr:Shell_script
- dbr:Assignment_(computer_science)
- dbr:Association_list
- dbr:Automata-based_programming
- dbr:BEAST_(music_composition)
- dbr:Bootstrapping_(compilers)