![]() |
|
![]() ![]() ![]() |
|
popovda |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 9.6.2006 Где: Москва Репутация: нет Всего: 6 |
Итак, обновился я до версии Intel Fortran 11.1.051 Update 3. Посмотрел особенности релиза и обнаружил, что наконец-то интеловцы сделали хоть какое-то дееспособное ООП согласно стандарту 2003. Многое ещё не поддерживается, кое-какие места не ясны по уровню реализации, т.к. сами интеловцы пишут, что не успевают доработать справку
![]() Сразу оговорюсь, что переопределить методы setPoint и getPoint как это я реализовал в NAG Fortran 5.2 не удалось. Похоже, что type-bound procedures ещё очень сырые Классы двух и трехмерных координат.
-------------------- С уважением, Попов Д.А. |
||||||
|
|||||||
kemiisto |
|
|||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: нет Всего: 160 |
popovda, неплохой пример.
Беда в другом - ООП несколько уродливо в самом стандарте. Что меня лично раздражает:
popovda, скажите:
-------------------- |
|||
|
||||
popovda |
|
||||||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 9.6.2006 Где: Москва Репутация: нет Всего: 6 |
Уродливо - не уродливо, но как есть. Напишите об этом в WG5. Они 2008 обсуждают, там много мелких дополнений. Конструкторы ещё не поддерживаются в IVFC, в NAG гляну как обойти.
Без комментариев. Правда не стоит забывать о переименовании переменных
А чего в нем плохого? Тем более что точка исторически занята под операторы. Нормально, привыкается быстро, зато в отличии от точки в глаза кидается ![]()
В справке пусто. Буду тестировать, как раз собирался. Хуже, что generic не поддерживается ещё.
Частично поддерживается. -------------------- С уважением, Попов Д.А. |
||||||||||
|
|||||||||||
popovda |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 9.6.2006 Где: Москва Репутация: нет Всего: 6 |
Проверил в данном компиляторе указанного релиза параметризованные типы данных. Увы, не поддерживаются, равно как и character(kind>1). Вот код теста. "!!" - комментарий стандартных (Ф2003), но не поддерживаемых ещё элементов.
-------------------- С уважением, Попов Д.А. |
|||
|
||||
kemiisto |
|
||||||||||||||||||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: нет Всего: 160 |
Вот уж что-что а переименование переменных без комментариев. Забыть как страшный сон! И associate тоже.
![]() И да, у Вас это
скомпилировалось? У this же intent(in)... ![]() Не кидается, а мозолит. Это и плохо. Абсолютно нечитаемо. Да мало ли что там исторически. Коммитет по стандартизации надобно вообще к стенке поставить за их "работу" по сохранению обратной совместимости. И не только (см. ниже). Это оксюморон. Стандарт либо поддерживается, либе не поддерживается. Третьего не дано.
Итак, теперь подробнее о том, как и что они там обсуждают. В ACM SIGPLAN Fortran Forum Volume 28, Issue 2 (August 2009) некто David Muxworthy (UK) публикует заметку под заголовком WG5 meetings: November 2008 and May 2009 A Personal View. Что же он там пишет?
О чём он говорит, надеюсь понятно. Вкратце: WG5 теряет авторитет, возвращая нас в 80-е, когда стандарта в принципе не существовало. И это пишет один из членов WG5... И вот ему "ответка". В новом Volume 28, Issue 3 (December 2009) Некто Dan Nagle (Chair J3 Standards Committee) в заметке под заголовком Joint J3/WG5 Meetings November 2008, May 2009 A reply to David Muxworthy пишет:
По факту:
Но там очень много "забавного":
Как вам? Фактически признаётся факт давления вендоров на постоянную политику обратной совместимости. Вот он звериный оскал капитализма. ![]()
5 лет!? ![]()
О как! А вообще, коммитет, который в начале тысячелетия не обладал достаточной информационной культурой, чтобы здраво и безошибочно расширить язык для прозрачной поддержки ООП - это нонсенс. -------------------- |
||||||||||||||||||
|
|||||||||||||||||||
popovda |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 9.6.2006 Где: Москва Репутация: нет Всего: 6 |
Ну, во-первых, читабелен код или нет зависит от того, кто этот код пишет или читает. Ещё как скомпилировалось
![]() -------------------- С уважением, Попов Д.А. |
|||
|
||||
kemiisto |
|
||||||||
![]() Дикий Кот. =^.^= ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: нет Всего: 160 |
Тем не менее, язык написания тут тоже имеет значение. И Fortran не блещет. ![]() Ну, значит баг компилятора. Радоваться тут нечему.
Нет, лучше когда неквалифицированный экспорт запрещён совсем. Как можно меньше свободы должно быть у программиста. Там много чего есть. И багов там тоже много. ![]()
Вы заблуждаетесь. Мощный и удобный инструмент должен быть простым, интуитивно понятным. Про это уже сто раз сказано. Даже я про это уже писал (про Це++). Так вот, всё тоже самое можно сказать и про Fortran. Поймите, текущий стандарт С++ - около 450 страниц (без стандартной библиотеки), Fortran - теже 450 страниц. В нынешнем состоянии это языки-уроды и они вымрут.
Меньше, 2-3 года. Ключевые вендоры уже, грубо говоря, распрощались с Fortran. В рамках DARPA's High Productivity Computing Systems (HPCS) program ("бабла" там "мама не горюй") идут разработки:
![]() -------------------- |
||||||||
|
|||||||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Fortran | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |