RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Может я не прав, но..


Список сообщений | Написать новое | Ответить на сообщение | Домой Поиск:
Предыдущее сообщение | Следующее сообщение
From : Alexander Conon
To : Игорь Козин
Subj : Может я не прав, но..

>>Прошу прощения, это о каком фортране идет разговор? FORTRAN-4, FORTRAN-77,
>это разве не одно и то же?
>Ну-у, батенька Вы даете.
кст почему на вы? я ж вроде пока сильно не хамил... :)

>Совсем нет... Вот, специально на Wiki залез посмотреть потому как
>почуял бесовщину
никакой бесовщины. мамайкилянусь!
просто определенно где-то видел :"фортранIV ака фортран-77"

>когда начал ниже примеры приводить. Одно из серьезных
>изменений сделаных в 77-ом - "Block IF statement, with optional ELSE and
>ELSE IF clauses, to provide improved language support for structured
>programming".
мерси. однако по мне так добавление не являющееся необходимым.

>До этого приходилось писать что-то типа:
>IF (a+b) THEN 10, 10, 20
>10 c (a+b)<=0
>...
>GOTO 30
>20 c (a+b)>0
>...
>30
>
>или
>
>IF (a.lt.b) THEN GOTO 10
>c "FALSE" часть
>...
>GOTO 20
>10 c "TRUE" часть
>...
>20
>И вот на нашей ЕС-1030 или 1040 (так кажись) именно такой Фортран 4
>и стоял... Это к вопросу ниже о "прозрачности" GOTO ...
совершенно не понятно что тут непрозрачного

>>>FORTRAN-90?
>>про это разговора не было
>Вот потому я и спрашивал о КАКОМ Фортране идет речь, потому как Фортраны
>разные бывают.
4. во всяком случае я именно про него говорил.

>А кстати, почему 90 не рассматривается?
а кто сказал "не рассматривается"? если хочешь - рассмотри.
просто мне про него сказать нечего.

>А ведь есть еще 92/2003 и даже (вот ересь-то) 2008. Забавно,
>кстати как это все в сторону нелюбимого C++ мигрирует.
угу. этот цэ - чума натуральная.
жить захочешь еще не так раскарячешься. (с)

>> реализация для пк или для ес-эвм?
>О-О-О-О. Вот она, ключевая фраза - "в какой реализации"?
>Конечно, низкоуровневое програмирование разной степени удобства возможно
>на любом языке. Все зависит от наличия библиотек. Я практически
>не припомню языка в котором были бы "зашиты" аппаратно-зависимые вещи.
>Ну, если не считать весьма всецифических вещей типа массивов Port[]
>и PortW[] (так кажется) в Turbo Pascal. А так никто не мешает иметь
>во внешней Фортрановской библиотеке функцию типа WRITE_PORT. Так вот,
>одним из достоинств раннего "C" (IMHO) была весьма развесистая
>СТАНДАРТНАЯ библиотека. К тому же достаточно хорошо (ни в коем случае
>не говорю идеально) проработаная на предмет нужности программисту
>при написании системных "штучек". А вот в Фортране СТАНДАРТНАЯ библиотека
>была "заточена" совсем на другое - на быстрые вычисления.
именно! никакого ограничения на работу с железом
у фортрана как языка нет. с библиотеками имхо случилась такая басня
что когда фортран пришел на пк роль системного языка _уже_
была передана цэ. и передана совершенно безосновательно.
и если для меня написание таких библиотек практически
непосильная задача то для профи это не должно составить особой сложности.

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

>>>>>> если даже сами поклонники цэ говорят о том
>>>>>> что им трудно разобраться в собственных исходниках
>>>>>> то не нужно удивляться тому что в результате получается
>>>>>> система на подпорках и веревочках.
>>>>>система на подпорках получается из-за того, что изначальная парадигма
>>>>>системы оказалась несовместима с реальной жизнью
>>>>а можно ли думая на цэ создать правильную парадигму?
>>>Ну-у-у... Это IMHO во многом зависит от стиля автора...
>>>Если автор неотчетливо мыслит, то и исходники будут соответственные.
>>>Люди не на C/C++ думают. Язык это все-таки инструмент, а не образ мысли.
>>то-то и оно что и образ мысли тоже.
>>ты видать начало пропустил.
>НЕТ. Во-первых, читал с самого начала. Во-вторых, не согласен,
>что язык - образ мысли... Ну скажите, и на каком же языке мне мыслить
>прикажете - PASCAL, C, C++, C# (не к столу будь помянут), LabView :(,
>VB, ASM, PHP, REXX? А еще приходилось на SQL, FORTH, FORTRAN, Matlab,
>TeX (не пробовали макро писать?). С моей точки зрения в них во вех больше
>общего, чем различий. Если человек структкру программы может себе
>представить в терминах, ну не знаю, блок-схемы, что-ли, то не все ли
>равно какой язык.
вот ты сам и сказал на каком языке думаешь - на языке блок-схем.

>Вот другая вещь очень сильно на мозги давит - после любого
>объектно-ориентированого языка (того же Turbo Pascal) работа в языке
>не поддерживающем объектную модель - сплошное мучение. Все так
>и наровишь объект создать и его сугубые свойства внутри от всех спрятать
>и не передавать в функцию каждый раз 99 параметров :(
эк тебя скрутило... однако при желании и к фортрану оо приделать можно.
правда судя по дельфям/паскалям это оо столько ресурсов жрет
что потеряется сам смысл использования именно фортрана.

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

>К сожалению для Фортрана большая часть нынешних прикладных программ
>вообще не нуждаются в мощных вычислениях. У них другие проблемы -
>окошки там разные, кнопочки, на мышку вовремя среагировать... :(
>Не бейте, дяденьки, я ж не говорю про программы типа FLUENT
>(хотя и они потихоньку на C++ переползают :( судя по версиям виденным
>пару лет назад).
как меняется со временем скорость апликух я сам вижу.

>Есть такое дело - личные предпочтения. А про FORTH это было шуткой
>только наполовину... На нем и вправду оч-чень эффективный код получается.
>И скорость разработки вполне приличная. Видал я как коллега ваял,
>да и сам немного ковырялся. Вот только немногие на нем работающий код
>писать могут. Мозги нужно иметь слегка насторону, потому у меня он
>и не прижился.
прааально. а если тебя посадить за форт на полгодика
то у тебя тоже будут мозги на сторону. а потом если ты будешь
сочинять новую ось на форте то она тоже получится на сторону.
фактически ты сам мои слова подтверждаешь.

>>>>>> и это удалось. более того фортран-компилляторы
>>>>>> до сих пор удерживают лидерство в этом плане.
>>>А какой процент задач ныне ДЕЙСТВИТЕЛЬНО требует самой высокой
>>>эффективности?
>>глядя на окружающую действительность так создается впечатление
>>что все 100%. софтины все жирнее и тормознее...
>>а уж кернелу эффективность нужна как никому!
>>тут уж определенно никаких сомнений.
>Давайте не будем говорить про бездарно написаные программы.
давайте

>Я с легкостью берусь затормозить программу раз примерно в 100 используя,
>например экранный контрол для хранения промежуточного резульата цикла
>(реальный пример из моей бывшей конторы, кстати :( ). Но это не проблема
>конкретного языка, а людей которые плохо понимают что они делают.
речь идет не о том как ее затормозить а о том как ее ускорить

>А вот что там последние тесты говорят? Какой выигрыш у Фортрана
>по сравнению с последними C++ компиляторами? В конкретных цифрах?
ну не помню я конкретные цифры... застрелиться мне теперь?
судя по тому как работают цэ-апликухи так цэ-компилеры эффективней
не становятся. да и фортран-компилерам вроде не с чего становиться
менее эффективными.

>>а с чего это goto вдруг стали непрозрачными?
>Да очень просто. Самое первое, что приходит в голову:
>"C":
>if( ){
>foo();
>foo1();
>else { // - вот тут скобочку закрыть забыли...
>foo2()
>}
>"F" (прошу прощения если не совсем точно, лет д-цать Фортраном
>не пользовался)
>IF THEN 10, 10, 30
>10 FOO
>FOO1
>GOTO 40 - представьте себе тут GOTO потерялось.
>30 FOO2
>Так вот не надо наверное объяснять, что любой самый убогий C-шный
>компилятор завопит, что вы скобочку забыли закрыть. А вот с точки
>зрения Фортрана (по крайней мере FORTRAN-IV, в котором конструкции
>IF THEN ELSE не поддерживаются) отсутствие "GOTO 40" ошибкой не является...
зашибись. для цэ привел пример грамматической ошибки
а для фортрана "потерялся" целый оператор.
тебе фортран-компилер кофе в постель должен подавать?
на це в "<=" потерять "<" можно куда проще и результат будет
таким же интересным и компилер тоже ничего не скажет.
и каким образом такую ошибку можно вообще сделать?
ты как раз привел пример того что goto в фортране _абсолютно_прозрачны_.

>>>и COMMON блоков можно умишком тронуться.
>>язык создавался как способный выжать из железа максимум.
>>а уж будет програмер трудиться экономя ту же память
>>или решит что ее у него и так навалом - так это сам програмер и решает.
>Здрасьте, мы же тут об эффективности. А Вы "будет программист или нет".
>Если не будет, то хорошо, а если будет, то тут-то и тронется пытаясь
>отследить что на что наезжает... Вот тут-то динамическое распределение
>памяти (см. Фортран 90) и помогает.
>И в "C" никто не заставляет программиста некорректные (рискованые)
>методы использовать. Хотя и есть возможность.
пааазвольте. в 4 тоже есть динамическое распределение памяти.
при чем тут _совместная_ память? это совершенно отдельная фича.
я конечно не програмер но в цэ такого вроде совсем нет.
это во-первых. а во-вторых заумность common сильно преувеличена.

>И, кстати, а чем по-Вашему "С" таки идеологически хуже Фортрана?
>Конкретные примеры, можно "в студию"?
дык как бы уже. апликухи все жирнее и тормознее
и их хистори - непрерывный и нескончаемый бугфикс.
оно конечно и на фортране можно написать тормозную прогу
и ошибку можно сделать но на нем это будут исключения
а на цэ - это правило. это просто вдобавок к тому
что все-таки язык - это и стиль мышления тоже :)


Fri 13 Jul 2007 01:34 XZ/77.0 (WARP; i386)




Programmed by Dmitri Maximovich, Dmitry I. Platonoff, Eugen Kuleshov.
25.09.99 (c) 1999, RU/2. All rights reserved.
Rewritten by Dmitry Ban. All rights ignored.