Подтвердить что ты не робот

Кто-нибудь использует язык программирования Схемы для жизни?

Я начал изучать Scheme для удовольствия и задавался вопросом, использует ли он его для жизни как основного языка программирования... или даже как дополнительный инструмент для арсенала программирования? Если да, для чего вы его используете? Какие проблемы вы обычно решаете с ним?

4b9b3361

Ответ 1

Есть много людей, которые пишут Scheme для жизни. Они университетские профессора, хотя, в основном, в области языков программирования - в Университете Индианы есть несколько, например Kent Dybvig и Дэн Фридман. Они прототип новых идей в семантике языка программирования (и Dybvig также продает компилятор Scheme).

Это не поле, в котором много платежеспособных клиентов, поэтому технически профессора оплачиваются, потому что они имеют полномочия в университете. Но они получили право владения, опубликовав новые идеи на языках программирования.

Есть также некоторые профессора, которые выступают за использование Схемы в качестве учебного языка, например Matthias Felleisen, а остальные - Схема PLT. Они также пишут Схему для жизни.

Схема отлично подходит для тестирования новой семантики языка, поскольку она содержит очень простые, мощные примитивы и единообразный синтаксис, позволяющий сосредоточиться только на семантике. Если вы разрабатываете новый язык программирования, прототипирование его в Scheme может быть полезным первым шагом. Схема не мешает новым идеям, потому что она включает в себя так мало своих.

Ответ 2

ITA Software (производители/операторы поисковой системы авиабилетов, которые поддерживают Hotwired и т.п.) записывают свой продукт в Lisp.

Кроме того, AutoCAD может быть написано в Lisp.

Ответ 3

Да, некоторые люди используют Схему для жизни. Например, есть случайные открытия для программистов Схемы здесь, в Монреале (http://theschemeway.blogspot.com/2009/03/scheme-job-openings-at-gamerizon.html). Найдите сайт для "задания" для получения дополнительной информации о работе Scheme.

По моему опыту люди, программисты на Схеме составляют менее 0,1% сообщества профессионального программирования, по крайней мере здесь, в Монреале. Я видел, как Scheme используется для программирования встроенных систем, высокоточных численных вычислений, веб-программирования, сценариев игр и т.д.

Ответ 4

Оригинальная версия Yahoo! магазин был написан Полом Грэмом в Common Lisp. Он продал его за большие деньги. (Обновление: только часть магазина, спасибо за подробный комментарий Laurence Gonsalves.)

Это, однако, один из немногих или даже единственный известный случай успеха Lisp в реальном мире, и по какой-то причине Yahoo переписала его на С++.

Существует несколько бесплатных программ, которые используют Lisp, но мало кто заплатит за то, чтобы работать над ними, и это не специально Scheme. gEDA является пакетом автоматизации электронного проектирования gnu и является одним из немногих успешных примеров для языка Guile, языка Gnu Lisp.

ELisp, или Emacs Lisp, возможно, является наиболее распространенной системой Lisp. Я не знаю, сколько пользователей emacs действительно используют язык расширения.

Ответ 5

Если ответ Уоррена вас не заставил, ответ отрицательный. Практически никто не зарабатывает на жизнь от Схемы. (Paul Graham Yahoo Store, на мой взгляд, исключение, которое доказывает правило - вы можете закодировать отличный продукт в Lisp, но есть причина, по которой Грэм - практически единственный человек на земле, который стал богатым. Думайте о Гарвардском Докторе и невероятно удачном времени.)

Однако люди в реальном мире зарабатывают на жизнь, выполняя функциональное программирование. Есть такие компании, как Galois, Jane Street и т.д., которые специализируются на функциональных языках. И как только вы изучили один функциональный язык (Scheme, OCaml, Haskell и т.д.), Другие функциональные языки намного легче изучить.

Я думаю, что вторая часть вашего вопроса - какие вопросы - схема, подходящая для решения - легко подлежит ответу. Схема Turing-complete, что означает, что она может разрешить все, что может сделать любой другой язык программирования. У этого есть некоторые отличные функции, которые даже не превратили его в Common Lisp еще (хвостовая рекурсия, особенно), но в нем также отсутствуют многие функции, которые CL приобрел за эти годы.

Ответ 6

Некоторые GNOME приложения доступны для сценариев с Guile диалект схемы, в первую очередь GIMP.

Близко связанный, GNU Emacs написан с использованием LISP.

Ответ 7

Я знаю парня в районе Бостона, который закодирует Scheme для жизни. Я думаю, что он работает для некоторых ответвлений MIT. Поскольку Scheme является 1-м языком в MIT, многие стартапы здесь используют Scheme хотя бы частично...

Итак, ответ на этот вопрос: "Некоторые, но не так много" (к сожалению)

Ответ 8

Видя, как схема является вариантом Lisp, ЛЮБЫЕ проблемы.

В качестве примера vesratility, движок электронной коммерции, который позже стал Yahoo! Магазины были (до того, как они были куплены Yahoo) в значительной степени, хотя и не исключительно, написаны в Lisp.

Ответ 9

Проверьте это: Видеоигра, написанная в Gambit C. Вот сообщение Опубликовать в список рассылки Gambit, который указан как таковой.

В моей работе я использовал небольшое программирование схем, в основном для автоматизации задач. Это было особенно полезно при прохождении массивной JSP-кодовой базы, чтобы вытащить любые CData и подготовить ее для отправки нашему поставщику переводов. (Yay SXML)

Наличие схемы в вашем резюме не так уж плохо.

Ответ 10

Coot (какая-то программа САПР для белков) наиболее цитируется 1 с открытым исходным кодом и использует схему в качестве языка расширения. Разработчики являются учеными и платят за его разработку.

1: в научной литературе

Ответ 11

Я не уверен, что он соответствует вашему определению на 100%, но есть музыканты, которые делают livecoding в Extempore, что в основном Схема. Не уверен, что я заработал зарплату ведущего разработчика, но я думаю, что отказ от "рабочего" музыканта - это тот, кто может заставить людей посещать их выступления, а люди, использующие Extempore/Scheme, похоже, управляют этим до сих пор.

Музыка Livecoding - это одна из областей, где Scheme хорошо подходит - это можно выразить меньше всего на клавиатуре, чем на других языках, и если вы посмотрите, что они делают, вы увидите, как макросы играют большую роль в создание пьес/выступлений. Схема также выглядит довольно красиво в редакторе, что является значительным плюсом при условии, что эти характеристики обычно включают в себя проекцию экрана кодера-исполнителя.