|
|
|
|
#1 |
|
Гость
|
Цитата:
Сообщение от belugin
http://www.nestor.minsk.by/sr/2003/07/30710.html
Когда наш гипотетический Блаб-программист смотрит вниз на континуум мощности языков, он знает, что смотрит вниз. Менее мощные, чем Блаб, языки явно менее мощны, так как в них нет некой особенности, к которой привык программист. Но когда он смотрит в другом направлении, вверх, он не осознает, что смотрит вверх. То, что он видит, — это просто "странные" языки. Возможно, он считает их одинаковыми с Блабом по мощности, но со всяческими сложными штучками. Блаба для нашего программиста вполне достаточно, так как он думает на Блабе. Тот кто, решает задачу с помощью менее мощного языка, вынужден прописывать в своем тексте больше подробностей (например, программисты на различных ассемблерах в этих подробностях просто тонут). А значит он об этих подробностях осведомлен. Тот, кто решает задачу с помощью более мощного языка, как правило даже не догадывается, сколько всего происходит за кулисами. Он отделен от происходящего толстой стеной из абстракций. И когда происходит нечто, выходящее за рамки этих абстракций, такой программист ничего не может сделать. Есть же известная статья на эту тему http://russian.joelonsoftware.com/Ar...tractions.html Так что в вашей цитате верх и низ перепутаны местами. P.S. Самый мощный язык программирования таков, что программы на нем состоят из одного пробела и решают неограниченный круг задач. Это серебряная пуля и красная кнопка в одном флаконе, точнее в чаше Грааля. Но непонятно, как найти ошибку в программе из одного пробела, если вдруг она перестанет работать как от нее ожидают. |
|
|
|
|
#2 |
|
Участник
|
Цитата:
Сообщение от Кирилл
Тот, кто решает задачу с помощью более мощного языка, как правило даже не догадывается, сколько всего происходит за кулисами. Он отделен от происходящего толстой стеной из абстракций. И когда происходит нечто, выходящее за рамки этих абстракций, такой программист ничего не может сделать.
Кстати, Джоэл почему-то предпочел сделать свой более мощный язык: Since we are not blub programmers, we like closures, active records, lambdas, embedded SQL a la LINQ, etc. etc. and so those are the kinds of features we put into Wasabi. Задача причем весьма прикладная и информационная - багтрекер. Цитата:
Но непонятно, как найти ошибку в программе из одного пробела, если вдруг она перестанет работать как от нее ожидают.
Последний раз редактировалось belugin; 25.09.2014 в 19:07. |
|
|
|
|
#3 |
|
Гость
|
Цитата:
А по-хорошему надо сравнивать действующие языки. C++ и C# к примеру. С# программист не напишет более быстрое вычисление чего-либо, чем C++ программист. |
|
|
|
|
#4 |
|
Разработчик
|
Достигается в плане реализации не на языках C# или C++.
PS. Скорее это удел многоядерного программирования на ассемблере, или на Fortran , а также надстройки над С++ и C в виде технологии от Nvidia CUDA. Речь не о том, что scala (как и все языки ФП) имеет поддержку параллельной обработки данных, а о том, чтобы программисту было комфортно быстро писать надежный более легкий в понимании и чтении код. Почему бы не достичь такого же результата и в X++ немного усовершенствовав его (в плане краткости, возможности беглого чтения кода, надежности) ? Последний раз редактировалось perestoronin; 25.09.2014 в 20:12. |
|
|
|
|
#5 |
|
Участник
|
Цитата:
OK давайте C++ и Plain C. Подсказка: - Язык X может включать все возможости языка Y + еще высокоуровневые возможности - На языке X можно написать eDSL с кодогенерацией как у Y (например Forth Assembler, WebSharper и т.д.) - Программист на Языке X может так же знать и Y и использовать его по мере надобности |
|
|
|
|
#6 |
|
Гость
|
Цитата:
Сообщение от belugin
Подсказка:
- Язык X может включать все возможости языка Y + еще высокоуровневые возможности - На языке X можно написать eDSL с кодогенерацией как у Y (например Forth Assembler, WebSharper и т.д.) - Программист на Языке X может так же знать и Y и использовать его по мере надобности Я же веду речь о тех знатоках языка X, которым все возможности языка Y уже разжевали и положили в рот, и у них просто не возникает необходимости изучать низкоуровневые возможности. |
|
|
|
|
#7 |
|
Участник
|
Цитата:
Кстати, как правило, абстракции более низкоуровневых языков можно выразить как частные случае высокоуровневых абстракций (грубо говоря "набор регистров процессоров это такой класс с N целочисленными свойствами, память - это массив байтов"). Тогда можно брать код, который пользуется ограниченным набором абстракций высокоуровневого языка и транслировать его на низкоуровневый вот, например, широко известное описание того, как делали смолток на Смолтоке. Таким образом для высокоуровневого программиста мы берем и объясняем низкоуровневые абстракции как разновидность того, что он уже знает. |
|
|
|
|
#8 |
|
Гость
|
Цитата:
Я сам такой же
|
|
|
|
|
#9 |
|
Гость
|
Цитата:
![]() Еще час назад наш пробел отлично работал, что же делать? Наверно стоит отправить запрос разработчикам компилятора. |
|
|
|
|
#10 |
|
Гость
|
Цитата:
Сообщение от belugin
Кстати, Джоэл почему-то предпочел сделать свой более мощный язык:
А тот, кто сел сразу за более мощный, о многом происходящем не догадываются. |
|
|
| Теги |
| .net, aot, cil, layer, morphx, x++, компилятор, слои |
|
|
Похожие темы
|
||||
| Тема | Ответов | |||
| Прощай, CITP-AT / Software-Vertriebsfirma Columbus IT Partner programmiert Pleite | 3 | |||
| Опции темы | Поиск в этой теме |
| Опции просмотра | |
|