Успешные Проблемно-ориентированные Языки? Какой Вы используете? [закрытый]

Я думаю, что вместо принудительной установки tableView.reloadData() и tableView.layoutIfNeeded() в viewDidLoad, вы можете просто установить автоматическую высоту вашего tableView в viewWillLayoutSubviews():

Swift:

override func viewWillLayoutSubviews() {
    super.viewWillLayoutSubviews()
    tableView.estimatedRowHeight = 300
    tableView.rowHeight = UITableViewAutomaticDimension
}
11
задан Bill the Lizard 5 August 2012 в 20:31
поделиться

15 ответов

DSL, который настолько успешен, что получил свой собственный тег SO, является языком регулярных выражений. Конечно, это относится к области сопоставления строковых шаблонов.

Другой популярный, но с которым у меня нет опыта, - это VHDL. Популярность VHDL объясняется тем фактом, что его легко преобразовать для использования в FPGA.

[править] Хотя это, конечно, не полный Тьюринг, спецификатор формата C printf () можно рассматривать как еще один предметно-ориентированный язык.

13
ответ дан 3 December 2019 в 01:33
поделиться

Веб-поиск Google поддерживает некоторую все более изощренную параметризацию

Вы можете утверждать, что это один из наиболее широко используемых DSL, если даже небольшая часть их пользовательской базы когда-либо использует один из них в отличие от стандартного списка слов.

0
ответ дан 3 December 2019 в 01:33
поделиться
  1. Mak Stealth's language for programming charcter behaviors (Do not think it has a name)
  2. Slang - Goldman Sachs language (I've heard of it but never used it)
  3. CMS-2 Navy programming language
0
ответ дан 3 December 2019 в 01:33
поделиться

В Ruby on Rails есть части, которые можно рассматривать как предметно-ориентированные языки. В частности, его язык для определения реляционных таблиц.

0
ответ дан 3 December 2019 в 01:33
поделиться

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

В Википедии есть хорошая вводная статья по этому поводу.

В этом обзоре есть раздел примеров с некоторыми хорошими ссылками.

0
ответ дан 3 December 2019 в 01:33
поделиться

AWK предоставляет язык для обработки полуструктурированных текстовых данных.
Многие из наиболее мощных широко используемых инструментов командной строки unix, таких как find и grep, могут быть классифицированы как имеющие специфичный для предметной области язык (даже если они ограничены только аргументами командной строки)

2
ответ дан 3 December 2019 в 01:33
поделиться

Вот вопрос, который я задал о DSL, написанных на Ruby: Репозитории Ruby DSL (Domain Specific Language) , examples

Помимо Ruby DSL, SQL является прекрасным примером очень популярного DSL, как и AWK.

1
ответ дан 3 December 2019 в 01:33
поделиться

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

3
ответ дан 3 December 2019 в 01:33
поделиться

EBNF , вероятно, является наиболее широко используемым предметно-ориентированным языком в своей предметной области - языком для описания языков.

6
ответ дан 3 December 2019 в 01:33
поделиться

MEL (язык выражений Maya) - это язык командной строки, который AutoDesk Maya использует на протяжении всего проекта. Формат файла Maya Ascii, в котором могут быть сохранены сцены, использует MEL для создания своих сцен. Пользовательский интерфейс в значительной степени построен и управляется с помощью сценариев MEL. Выражения, которые вы можете использовать для управления каналами и атрибутами объектов, - это MEL.

Я полагаю, что он технически может считаться встроенным языком в тех случаях, когда вы просто пишете для него сценарии. Однако без MEL Maya практически не существовало бы. Без формата файла ascii, без пользовательского интерфейса и т. Д.

1
ответ дан 3 December 2019 в 01:33
поделиться

NMake, MSBuild, lex, yacc, bison, flex, TeX, PostScript, XAML, SSIS, Wix

11
ответ дан 3 December 2019 в 01:33
поделиться

Эрланг изначально был языком для телекоммуникационных компаний, хотя сейчас (иногда) используется как язык общего назначения.

0
ответ дан 3 December 2019 в 01:33
поделиться

Я не знаю, хотите ли вы также рассматривать графические DSL. Я бы включил

  • NORMA , DSL для концептуального моделирования предметной области, основанный на нотации объектно-ролевого моделирования (ORM2)
  • Web Service Software Factory , который использует три DSL для моделирования веб-сервисов

Оба вышеперечисленных были созданы с использованием DSL Toolkit .

2
ответ дан 3 December 2019 в 01:33
поделиться

Две (не упомянутые ранее), которые произвели на меня наибольшее впечатление:

  • OpenSCAD для твердотельного 3D моделирования
  • TaskJuggler для управления проектами (!)

Я большой поклонник декларативных DSL. Операционные DSL (такие как Maple, Mathematica и R тоже хороши, но не так уж сильно отличаются от обычных языков).

0
ответ дан 3 December 2019 в 01:33
поделиться

Tcl - это язык, который изначально был разработан как основа для создания DSL - обеспечивая базовую функциональность, такую как программирование и ввод/вывод, в то время как специфические части создавались заново для каждого приложения - и который вырос в общий язык сценариев. Одним из наиболее известных DSL на базе Tcl является Expect.

0
ответ дан 3 December 2019 в 01:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: