Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2009.07.05;
Скачать: [xml.tar.bz2];

Вниз

Языки свервысокого уровня.   Найти похожие ветки 

 
Дмитрий Белькевич   (2009-04-30 13:32) [80]

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

Delphi + VCL вроде идеально подходят. Нет разве? Кинул компоненту/класс. Вызвал один метод - и всё - пошел свою задачу дальше решать.

Компонент всё больше, всё более лучших появляется.

Зачем себе мозг брейнфаками ломать?


 
tesseract ©   (2009-04-30 14:17) [81]


> Delphi + VCL вроде идеально подходят. Нет разве? Кинул компоненту/класс.


В VCL ошибок хватает. Иногда весьма изящные перлы попадаются. Функциональным тоже неявляется - топик не об этом.


 
Дмитрий Белькевич   (2009-04-30 14:26) [82]

>В VCL ошибок хватает. Иногда весьма изящные перлы попадаются. Функциональным тоже неявляется - топик не об этом.

Вы хотите найти/сделать язык без ошибок?

Так он есть - выше написали - begin stop end.

Всё что сверх того (даже hello world), будет либо подвержено ошибкам либо будет непрактичным (будет работать со сферическими конями в вакууме). Как бы не старались.


 
Alkid ©   (2009-04-30 14:44) [83]


> Дмитрий Белькевич   (30.04.09 13:32) [80]

Ну, это если на все случаи жизни компоненты есть :)
Эту же логику можно и дальше развить - зачем вообще программировать? Ищешь готовую программу, которая делает, что надо, и используешь! Проблемы начинаются тогда, когда надо что-то нетривиальное самому писать.


 
Дмитрий Белькевич   (2009-04-30 15:01) [84]

>Ну, это если на все случаи жизни компоненты есть :)

Жаль, конечно, TWindows нет ;)

На многие стандартные случаи компоненты есть. И продолжают появлятся. Нестандартные же случаи и составляют то, что вы можете писать сами.

>Ищешь готовую программу, которая делает, что надо, и используешь!

Если уже есть программа, которая делает то, что надо - то именно так и следует поступать.

>Проблемы начинаются тогда, когда надо что-то нетривиальное самому писать.

Давайте тогда начнём с безошибочной операционки. Иначе не имеет смысла.


 
test ©   (2009-04-30 15:06) [85]

Дмитрий Белькевич   (30.04.09 15:01) [84]
>>Жаль, конечно, TWindows нет ;)
Есть unit"ы system и windows он просто в виде компонента не оформлен.))


 
tesseract ©   (2009-04-30 16:02) [86]


> Есть unit"ы system и windows он просто в виде компонента
> не оформлен.))


Иммеется в виду

 class TwindowsXP(TCustomWindows)


 
Узурап   (2009-04-30 16:33) [87]


> Delphi + VCL вроде идеально подходят. Нет разве? Кинул компоненту/класс.
>  Вызвал один метод - и всё - пошел свою задачу дальше решать.
>

дадада
потому и паника у студентов, когда нужного компонента\класса нет


 
Дмитрий Белькевич   (2009-04-30 17:28) [88]

>потому и паника у студентов, когда нужного компонента\класса нет

1. у студентов паника всегда.
2. из того, что у студентов всегда паника, не следует, что компоненты лучше не использовать.


 
Игорь Шевченко ©   (2009-04-30 18:13) [89]


> Эту же логику можно и дальше развить - зачем вообще программировать?
>  Ищешь готовую программу, которая делает, что надо, и используешь


Очень разумный подход


 
Дмитрий Белькевич   (2009-04-30 19:57) [90]

Сообщение на баше почти в тему:

xxx: Блин...
xxx: я тут по матану доказательство написала на две страницы, а оказывается, это вообще опровергнуть надо было


 
Копир ©   (2009-05-01 04:25) [91]

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

Однако по теме, отмечу, что язык сверхвысокого уровня - это
утопия. Страна Эльдорадо. Несбыточная мечта.

Язык ассемблера предполагал знание архитектуры "машины".
Язык Pascal - знание функций и операторов в рамках программы, созданной
Никлаусом Виртом из инструкций того же ассемблера.

А "сверхвысокий"? Как создать?

Межплатформенность, преодолённая "Явой"?
Или междусайтовость, учтённая в php?

Когда-то новая, советская и утопическая псевдокультура в 20-х, 30-х годах
пропагандировала изучение и внедрение универсального языка "эсперанто".

Даже учебники издавались.

Такая брехня!
На этом самом "эсперанто" никто нынче не говорит.

Так и "сверхвысокий" уровень.

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

Как лингвист должен знать этимологию слов языка, который собирается описать.

Программист - это переводчик.


 
@!!ex ©   (2009-05-01 09:56) [92]

Удалено модератором


 
Не модератор   (2009-05-01 10:08) [93]

Удалено модератором


 
Добрый Самаритянин   (2009-05-01 10:34) [94]

Удалено модератором


 
Alkid ©   (2009-05-01 14:37) [95]


> Игорь Шевченко ©   (30.04.09 18:13) [89]
> > Эту же логику можно и дальше развить - зачем вообще программировать?
> >  Ищешь готовую программу, которая делает, что надо, и
> используешь
> Очень разумный подход

Согласен.
Жалко, что не всегда есть готовая программа в приемлемом ценовом диапазоне.


 
Alkid ©   (2009-05-01 14:43) [96]


> Копир ©   (01.05.09 04:25) [91]

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


 
Копир ©   (2009-05-02 01:01) [97]

>Alkid ©   (01.05.09 14:43) [96] :
>Милейший, Вы себе превратно представляете природу языков

Очень может быть!

Я представляю очень просто: Cидит программист на ассемблере
и генерит процедуру "PrevratnoPredstavljeteProceduru"


 
Совесть ДМ ©   (2009-05-02 01:03) [98]


> Копир ©

со свиным рылом в калашный ряд?
похоже, для вас это обычное дело


 
Копир ©   (2009-05-02 01:13) [99]

>Совесть ДМ ©   (02.05.09 01:03) [98]
> Копир ©
со свиным рылом в калашный ряд?
похоже, для вас это обычное дело

Да ладно, "Совесть ДМ".
Я не гордый. В Ваш ряд совать себя не буду.


 
Дуб ©   (2009-05-02 04:56) [100]

>
> Такая брехня!
> На этом самом "эсперанто" никто нынче не говорит.

Говорят. И многие. И книги издают. Только вот при чем тут это?


 
Копир ©   (2009-05-02 07:14) [101]

>Дуб ©   (02.05.09 04:56) [100] :
>Говорят. И многие.

А можно Вас попросить?
Ну, пару фраз?

Для иллюстрации?


 
@!!ex ©   (2009-05-02 08:24) [102]

> [101] Копир ©   (02.05.09 07:14)
> А можно Вас попросить?
> Ну, пару фраз?
>
> Для иллюстрации?

Bona mateno, safo!

s - здесь как ш, а  не как s. Не в курсе, как на форуме поставить крышку сверху.


 
Копир ©   (2009-05-02 08:26) [103]

^
:)


 
@!!ex ©   (2009-05-02 08:27) [104]

> [103] Копир ©   (02.05.09 08:26)

Если что - это не оскарбление, а просто пример фразы.


 
Копир ©   (2009-05-02 08:35) [105]

>@!!ex ©   (02.05.09 08:24) [102] :
>Bona mateno, safo!

Ну и что? @!!ex?
Примитивное словосочетание.
Не понятное ни испанцам, ни итальянцам, откуда понатасканы слова.
И это "Сафо". Это лесбиянки?

Так и знал, что весь этот "эсперанто" закончит себя гей-парадом.

@!!ex: Ничего личного!
Я уважаю Ваше мнение.

Посмотрим, что за пример приведёт Дмитрий Заварзин :))


 
@!!ex ©   (2009-05-02 08:37) [106]

> [92] @!!ex ©   (01.05.09 09:56)
> Удалено модератором

Разверну то что там было написано:
На Эсперанто разговариватет примерно 20 000 000 человек, из них примерно 2 000 000 - свободно как на родном. Примерно для 100 000 этот язык родной.
Данные из учебник Колкера.

Эсперанто никогда не был советским продуктом, его изучали ученые в начале века, практически любой образованный человек говорил или как минимум понимал Эсперанто. Из-за советских репрессий практически все эти люди были убиты или посажены, поэтому образовался огромный провал в развитии и распространении Эсперанто.
Возможно, если бы эти люди выжили, сейчас Эсперанто был бы более распространенным и занимал место Английского.
Лично я считаю, что английский более перспектиынй чем Эсперанто, и Эсперанто умрет в течении лет 100. Но это обидно. И не является заслугой Английского.

Как человек сопереживающий идее распространения Эсперанто мне неприятно слышать о нем необоснованные заявления, чем и был вызван мой необдуманный ответ в [93]. Я извиняюсь перед автором, но прошу более осторожнео делать такие заявления.


 
@!!ex ©   (2009-05-02 08:38) [107]

> [105] Копир ©   (02.05.09 08:35)
> И это "Сафо". Это лесбиянки?
>
> Так и знал, что весь этот "эсперанто" закончит себя гей-
> парадом.

К сексу это слово никакого отношения не имеет. :) И я сказал, что это ш, а не с.
Какое словосочетение вам перевести?


 
Копир ©   (2009-05-02 08:48) [108]

>@!!ex ©   (02.05.09 08:37) [106] :

Внимательно прочитал.
Уважаю Ваше мнение.

Понимаете, в 20-30-е годы, когда человечество впервые столкнулось
с техническими открытиями, как-то, с аэропланом, с радио, с ракетой
даже, с революциями...

Оно (человечество) вдруг возомнило о себе невесть что!

Вы повесть "Аэлита" писателя А.Толстого, читали?
Про запуск на Марс?

Это характерно: все молодые культуры отчего-то стремят себя на Марс.
Американцы, коммунисты, если верить Толстому...

Культуры древние, вроде России, те, скорее "на Венеру".
Фильму "Планета Бурь" смотрели в пионерском лагере?

А египтян и греков ваще никуда не несёт.


 
AndreyV ©   (2009-05-02 11:29) [109]

> [106] @!!ex ©   (02.05.09 08:37)

Когда был увлечён радиолюбительством, лет в 12-16, то слышал иногда в эфире на эспиранто, но редко - английский, таки, для международной связи был де-факто. Ни того ни другого я не знал и не знаю.


 
Дмитрий Белькевич   (2009-05-02 13:58) [110]

Продолжим в теме.

ЯСВУ, как язык, лишенный ошибок, возможен. Если каждая его функция будет требовать строгого мат. доказательства. На уровне языка.

Проблема в том, что для идеального языка нужна идеальная среда. Безошибочная операционная система. Безошибочно работающее железо. Безошибочные среды передачи информации. Безошибочные юзеры, работающие с программой. И так далее.

Очевидно, что на всё это требуется потратить огромные ресурсы. Идеальный ЯСВУ возможен, но экономически сильно не выгоден.

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

Другое дело, что даже в Delphi часть рутины, думаю, вполне можно было переложить на компилятор.

Например, как самый минимум, научить автоматически искать утечки, с выдачей хинтов в строчках, где есть утечки.

И делать это не при каждой компиляции, а отдельной командой среды, или вообще отдельным приложением (что бы оставить основную компиляцию быстрой).

Нечто типа такого отдельного анализатора кода. В этом направлении можно много чего интересного придумать. Уже даже начали в этом направлении кое-что делать. Видел стороннюю тулзу, которая может автоматически лишние библиотеки в секциях uses находить.

То же самое можно было бы придумать и с автоматическим анализом потенциально опасных мест в коде. Ведь многие из них известны. Многие ошибки происходят по одним и тем же причинам. Их счетное множество.

Это, конечно, всё очень сложно программировать, но сильно упростило бы жизнь и существенно уменьшило число ошибок. Хорошо то, что такое можно запрограммировать один раз и оно работало бы универсально, с любым кодом, не вдаваясь в задачу.


 
Alkid ©   (2009-05-02 14:09) [111]


> Дмитрий Белькевич   (02.05.09 13:58) [110]

Смотрите такую вещь как Resharper - аддон к Visual Studio, который умеет делать такие вещи.

Еще смотрите такую вещь, как Microsoft Pex.

Т.е. в этом направлении работа уже не первый день ведется.


 
tesseract ©   (2009-05-02 20:41) [112]


> Копир ©


Идеи грамотные, отлично обоснованные. Но вот про саму идею  ЯСВУ - всё таки посмотрите. ЯСВУ в настоящее время сильно предметно-ориентированные, в этом их суЧность. Хотя это судьба любого практически применимого языка.


 
Копир ©   (2009-05-02 23:06) [113]

>tesseract ©   (02.05.09 20:41) [112] :

Насчёт языков (и сверхвысоких, в том числе) хорошо высказался
Курт Гёдель.

Всякий язык в своей основе противоречив.
Хоть цыганский, хоть азбука Морзе.

Зачем тогда создавать сверхвысокое противоречие?

Чем Pascal не угодил?


 
Копир ©   (2009-05-02 23:14) [114]

Чем выше уровень языка, тем дальше он от "машины".
Так программисткой может стать любая "дурочка из переулочка" :))

Идея встроенных компонент, это идея хорошая.
Но на ту самую "дурочку" и настроенная.

Взяла кнопку-бутон. Написала событие "Close", а на кнопке
нецензурное слово "Конец"...

Вот вам и дефачка-программистка :))


 
Alkid ©   (2009-05-02 23:29) [115]


> Копир ©   (02.05.09 23:14) [114]

Идея о том, что программирование будет как "Лего", и что любой бухгалтер сможет программировать далеко не нова. Подобные идеи появляются регулярно годов, наверное, с 70-х.

Развитие средств разработки иногда может создать иллюзию того, что этим идеям суждено быть реализованными. Действительно, сейчас программисты гораздо меньше озабочены всякими таинственными машинно-ориентированными вещами, как регистры, разрядности, порядок следования байт, вектора прерываний и т.п.  Даже культура раздачи идентифиаторов изменилась на более human-friendly.

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

Так что "удаление от машины" не спасёт эту "девочку-программиста" от необходимости развивать в себе более фундаментальные навыки, чем знание внутренностей компьютера и операционной системы.


 
Alkid ©   (2009-05-02 23:33) [116]

К [115] добавлю, что сужение семантического разрыва (semantic gap) между предметным языком и языком программирования является наипервейшей задачей разработчиков языков программирования. Но устранение принципиальной разницы между естественным языком и языком программирования - нет. Так что создание языков "сверхвысокого уровня" никогда не сделает из первого встречного программиста.


 
Совесть ДМ ©   (2009-05-02 23:34) [117]

а у вас похоже трибуна открыта для нариков?
я приветствую это, редкий форум допускает


 
Alkid ©   (2009-05-02 23:48) [118]


> Совесть ДМ ©   (02.05.09 23:34) [117]

Конечно открыта, специально для тебя.
Говори, не стесняйся :)


 
Совесть ДМ ©   (2009-05-02 23:56) [119]

Удалено модератором


 
Копир ©   (2009-05-03 00:06) [120]

>Alkid ©   (02.05.09 23:29) [115] :
>Программа для компьютера до сих пор принципиально отличается от программы
для человека тем, что она всегда представляет собой целостную
(полную и непротиворечивую) формальную систему, описывающую решение задачи.

Вот! Вот давно хотел услышать что-то подобное.

И на самом деле человек-программист создаёт нечто целостное, не противоречивое,
вопреки запрету Гёделя.

Не потому, что запрет не существует, а потому, что программисту нужен результат.
Готовая программа.

Иначе и компьютер мог бы программировать?

Нет. Не сумел бы. Наткнулся бы на теорему о неполноте.



Страницы: 1 2 3 4 вся ветка

Форум: "Прочее";
Текущий архив: 2009.07.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.7 MB
Время: 0.013 c
2-1242548602
Чипырик
2009-05-17 12:23
2009.07.05
Вопрос по WordApplication


2-1242462330
snake-as
2009-05-16 12:25
2009.07.05
Распечатать файл с форматированием и таблицами


3-1223373658
Виталий Панасенко
2008-10-07 14:00
2009.07.05
Проблема при заливке данных с FireBird в MySQL


15-1241013895
andre17
2009-04-29 18:04
2009.07.05
Ошибка при работе с BOLD for Delphi


15-1241011871
Savek
2009-04-29 17:31
2009.07.05
Безопасность компьютера может быть под угрозой





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский