Похоже, это была проблема клиента.
редактировать - ~/.ssh/config
# This is ~/.ssh/config
# For all hosts
ServerAliveInterval 10
# For a selection of hosts
Host keepsdroppingme.com alsokeepsdroppingme.com
ServerAliveInterval 10
Можно встроить DSL в более общем языке программирования. Это часто - хорошее решение. (Вы могли сказать, что этот DSL принимает форму конкретного API.)
Можно также создать отдельный язык, с его собственным интерпретатором, для представления понятия домена. Это имеет тенденцию быть большим обязательством и часто не необходимо.
У Вас все еще была бы только семантика базового языка.
Например: функциональное программирование на императивном языке не работает. Таким образом, у Вас есть функциональный DSL, добавленный к этому императивному языку...
Да, абсолютно - простой API сделает приятно как DSL, если базовый язык будет иметь достаточную гибкость для поддержки его.
Ruby является очень хорошим языком для такого, особенно учитывая дополнительный parens и другую гибкость.
Направляющие часто упоминаются как DSL для записи управляемых базой данных веб-приложений.
Грабли являются системой сборки с DSL для записи (более умных) make-файлов.
Мой собственный OOFILE является платформой, которую можно рассматривать как DSL для записи приложений базы данных в C++ - это было вдохновлено dBase и делает очень интенсивное использование из перегрузки оператора C++, локальных объектов и потоковых идиом.
Forth является классически языком, который стирает грань между DSL и API, поскольку программа Forth состоит из немного больше, чем серия разделенных пробелом слов. Вероятно, самым впечатляющим примером Forth, DSL является Распространенность - Распространенность, является основанный на Forth бизнес-язык программирования, записанный в Forth BBL. BBL является компилятором Forth DOS на 32 бита. Распределенный, как. Посмотрите предупреждения. Это не для слабого сердечного. Это представляло бы интерес главным образом для кого-то программное обеспечение разработки для третьего мира, где Вам нужно быстрое выполнение на старом драндулете XT и В компьютерах. Можно записать некоторые очень сложные программы ввода данных с ним, которые выполнят круги вокруг современных программ ввода данных.
Вы путаете понятие с реализацией. Проблемно-ориентированный язык является любым представлением идеи, которую считают "близкой" к проблемной области, вместо того, чтобы быть общим языком для описания решения проблем в целом.
Да, DSL мог бы быть реализован как API, который обеспечил функции, которые упомянули конкретные понятия в проблемной области, но DSL одинаково допустим при представлении как текстовый файл.
Прагматически настроенный Программист: От Подмастерья Ведущему устройству содержит хорошее описание DSLs и обстоятельств, при которых они полезны с примерами.Очень рекомендуем.
И, конечно же, графический DSL вообще не требует синтаксического анализа.