Как будущие языки программирования могут лучше упростить абстракцию? [закрытый]

Кажется, что необходимо пройти таблица sqlite_master , как это:

SELECT * FROM dbname.sqlite_master WHERE type='table';

И затем вручную проходят каждую таблицу с SELECT или подобный для рассмотрения строк.

.DUMP и .SCHEMA команды, кажется, не видит базу данных вообще.

10
задан 2 revs, 2 users 100% 30 April 2012 в 22:41
поделиться

7 ответов

Мощный инструмент абсракции, Макросы Lisp . Почему бы не заглянуть в прошлое и настоящее? :)

5
ответ дан 4 December 2019 в 00:26
поделиться

Некоторые области, которые я считаю потенциально плодотворными:

  • Преднамеренное программирование или что-то подобное. Компания Чарльза Симони Intentional Software некоторое время хранила молчание, но теперь начинает демонстрировать некоторые многообещающие ранние демонстрации.

  • Функциональное программирование : идеи функционального программирования все чаще находят свое воплощение основные языки, такие как Python, C # (Linq, лямбды и т. д.) и даже C ++ (лямбды в C ++ 0x). F # становится первоклассным языком .NET с полной поддержкой в ​​Visual Studio. Рост многоядерной разработки - еще один фактор, способствующий более широкому внедрению функциональных концепций.

  • Domain Specific Languages ​​ (DSL): тесно связаны с идеями, лежащими в основе преднамеренного программирования, Microsoft, похоже, прилагает некоторые усилия для поддержки DSL как части экосистемы .NET.

  • Гораздо более сложные IDE. Уже есть некоторые положительные изменения в инструментах рефакторинга в IDE, таких как Visual Studio и IntelliJ, но я думаю, что в этой области есть много возможностей для прогресса. Переход от глупых текстовых исходных файлов к чему-то более похожему на представление абстрактного синтаксического дерева может значительно упростить работу на более высоком уровне абстракции. Опять же, это связано со многими идеями, лежащими в основе преднамеренного программирования.

3
ответ дан 4 December 2019 в 00:26
поделиться

Они могут использовать саморазоблачительную семантику, чтобы лучше разрешить метапрограммирование среды / языка, представленного как интерфейс конечного пользователя. Семантика изменяемого языка.

3
ответ дан 4 December 2019 в 00:26
поделиться

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

ООП довольно хорошо упрощает абстракцию. Это разработчики приходят с плохо сформулированными идеями.

1
ответ дан 4 December 2019 в 00:26
поделиться

Доказательства кода Эйфеля . (предупреждение: ссылка на PDF!)

0
ответ дан 4 December 2019 в 00:26
поделиться

Убедитесь, что вы делаете это по уважительной причине: простая функция, подобная приведенной ниже, допускает статическую типизацию и позволяет вашей среде IDE делать такие вещи, как «Найти ссылки» и «Рефакторинг -> Переименование». -2510538-

Давайте посмотрим, как насчет того, чтобы сделать абстракцию обязательной для каждого типа данных, а затем предоставить способы обобщения наших абстракций по параметрам типа? Подождите! Я только что заново изобрел CLU . Получу ли я премию Тьюринга?

Любой, кто интересуется ролью абстракции в программировании, должен изучить CLU .

0
ответ дан 4 December 2019 в 00:26
поделиться

Функциональное программирование, аспектно-ориентированное программирование, дизайн по контракту и вообще все, что уводит нас от темный век императивного программирования.

Кроме того, я надеюсь, что разработка неуправляемого программного обеспечения перестанет существовать. С ++ и другие мелочи низкого уровня меня огорчают. : - (

Мне нравится мой LINQ, мой лямбда-оператор, мои методы расширения и мои удобные интерфейсы. О, и я люблю PostSharp.NET. И F #, но я думаю, очень сложно НЕ любить F #.: -)

0
ответ дан 4 December 2019 в 00:26
поделиться
Другие вопросы по тегам:

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