Как стать автором
Обновить

Комментарии 59

"давно культурный феномен" - но, похоже, феномен крайне малоизвестный...

Нормально известный по крайней мере в Cloud/HPC.

Я знаю что такое фортран, сферы его применения, и т.д. Как культурный феномен - по нулям, даже про Cobol как-то больше баек и шуток

"Энциклопедия профессора Фортрана"
Найдите такое про Кобол ))

Ну как, 12 колоний Кобола же в BSG. Там, правда, не тот Кобол )

Поиск русского назвния Фортран языка на Github показывает немного результатов, в отличии от Fortran слова на Github

Fortran находится на 47-месте в рейтинге решённых задач на площадке rosettacode.org (на пару строчек выше чем Форт (Forth)

По текущему индексу TIOBE Fortran находится на 15-ом месте

P.S. Фортран язык был первым языком на радиотехнических специальностях вузов СССР и преподавался с первого семестра (на ЕС СМ в диалоговом терминале), Поддержки исполняемых массивов из стандарта Fortran77 в нём не нашлось. В синтаксисе Фортран можно было переходить по одному из трёх ветвлений (>0 0 <0)

В синтаксисе Фортран можно было переходить по одному из трёх ветвлений (>0 0 <0)

Удивительнее всего, что в первоначальном драфте из 1954 IF был куда нормальнее, то есть были знаки =, > и >=, ну и две ветки (номера строк), по которым переходить. Эта конструкция, как и GO TO, были заимствованы из работы одного из коллег Цузе.

Но такой синтаксис требовал добавления нового знака >, с этим были проблемы, и IF получился из трёх веток в зависимости от знака выражения в скобках.

Вообще-то логический IF (к упомянутому арифметическому) появился в FORTRAN IV (который и стал стандартом 66) и без всех этих знаков.

.NE., .EQ., .LT., .LE., .GT., .GE.
.NOT., .AND., .OR.

Так у меня ж написано, прямо в главке о Фортран IV:

Нормальный IF (с ELSE) также не завезли, но в условии IF уже можно писать логические выражения.

Пока вникал в комментарий и строчил свой — уже успел забыть :)

.NE., .EQ., .LT., .LE., .GT., .GE.

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

А я, пока писал тот комментарий, поймал себя на мысли, что тоже использовал бы такую форму, если бы мне сегодня пришлось писать на Фортране. Но я с ним расстался более 30 лет назад, и, признаться, ни разу не пожалел.

Арифметический IF напрямую транслировался в систему команд IBM 704: Transfer on Minus, Transfer on Zero, Transfer on Plus.

И правда, оказалось, что 704 различал +0 и –0, и первый был больше второго, поэтому при сравнении аккумулятора на плюс-минус результат мог быть indeterminate если получился ноль в результате. Проще было добавить проверку на ноль в IF и исполнять её первой в скомпилированном коде.

Спасибо за наводку, если вам интересно, вот тут спеки https://bitsavers.org/pdf/mit/computer_center/Coding_for_the_MIT-IBM_704_Computer_Oct57.pdf

Библиотека Numpy (Python, Pandas) с 50 млн. загрузок в месяц (это много) - использует в т.ч. Fortran. Быстрая матричная арифметика, востребованность API, огромное комьюнити - то что нужно для вечной жизни технологии и языка.

В восьмидесятых во всех технических вузах союза фортран преподавали.

Именно на нём я в своё время написал программу для расчёта эпюр и вся моя группа была у меня безмерно благодарна:)

НЛО прилетело и опубликовало эту надпись здесь

О, Б3-34! У меня до сих пор лежит работающий. Иногда включаю его поностальгировать.

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

Да и в начале 90х в Питерском Политехе в полный рост Фортран преподавали...

А бедным студентам-программистам хотелось C++ :)

3

До сих пор преподают (что не мешает преподавать и C++). Причём если в Питерском Политехе преподают современный Фортран, то в Новосибирском Политехе преподают Watcom Fortran 77.

Очень много писал на Фортране в институте и на работе. Первый основной язык был.

> В 1950, уже выпустившись, новоиспечённый математик волею случая прогуливался мимо 590 Мэдисон, IBM building ... – его звали Джон Бэкус – заинтересовался и зашёл посмотреть, попросил поговорить с шефом, решил две задачки – и был принят на работу программистом SSEC.

> Через год Бэкуса перевели на только что появившуюся IBM 701, писать софт для расчёта траекторий баллистических ракет. Занятие это он очень не любил и искал способ ускорить

получается Бэкуса перевели на "только что появившуюся 701" примерно в 1951, хотя IBM начала поставлять 701 в 1953 году,

заметим "писать софт для расчёта траекторий баллистических ракет" Джон Бэкус не только не любил, но просто этим не занимался, контора где он работал (IBM Watson Scientific Computing Laboratory) в то время занималась расчетом эфемерид Луны типа на 20-30 лет вперед для астрономии, навигации и пр.,

>IBM 701 при этом расходился как горячие пирожки (аж 19 машин за два года),

их всего 19 было сделано, убогая машина с памятью на катодных трубках, для примера 704 с памятью на сердечниках было продано примерно 136

 "только что появившуюся 701" примерно в 1951, хотя IBM начала поставлять 701 в 1953 году

Правительство разрешило любые компьютеры продавать на гражданку только в 1951, проект существовал и до этого, но был засекречен и не предназначался на продажу, не был продуктом. Анонсировали уже готовый к производству 701 в 1952. Поставлять начали в 1953, под предзаказы.

не только не любил, но просто этим не занимался

Even though he was a programmer—a newly minted title even he didn’t understand at the time—Backus said he “didn’t like writing programs, and so, when I was working on the IBM 701 (an early computer), writing programs for computing missile trajectories, I started work on a programming system to make it easier to write programs.” It would be called “Speedcoding.”

https://www.ibm.com/ibm/history/ibm100/us/en/icons/fortran/

занималась расчетом эфемерид Луны

Эфемериды Луны он считал на SSEC, это было его первое задание в фирме, он сам про это рассказывал в позднем интервью.

> проект существовал и до этого, но был засекречен и не предназначался на продажу, не был продуктом.

историю 701 знаю неплохо, "the defense calculator", первая поставка в Los Alamos 1953, leasing порядка $15k в месяц, продукт конечно, такой же как более серьезная машина Q7, вопрос был к выражению "как горячие пирожки", это вероятно больше к другим моделям подходит

>он сам про это рассказывал в позднем интервью.

здесь Вы правы, Watson Lab с 1953 года стала многим другим заниматься

ps

стандартное определение -

"A product is any item or service you sell to serve a customer's need or want"

В СССР была выпущена аж полноценная серия образовательных комиксов для младших школьников, сразу единой книгой почти на 200 страниц, «Энциклопедия профессора Фортрана» – жаль поздно, в 1991.

Вот только к языку она не имела никакого отношения.

Вот только к языку она не имела никакого отношения.

Как и астероид, и синти-поп группа, и робот-мизантроп из будущего. В том и поинт.

Фортран это и правда культурное явление.

Помню в конце 90-х нам в вузе преподавали Фортран 77, причём один семестр лабораторные мы делали на древнючих терминалах подключенных к машине с каким то не менее древним юниксом.

Язык в то время уже странный, строки шириной на 80 символов -- количество знаков в перфокарте, первые 8 символов -- метка строки для переходов. Довелось делать интерфейс для программы написанной. В readme.txt было прекрасное, на мой взгляд, замечание, что алгоритм написанный автором на другие языки программирования не переносится. Я предполагаю, что автору очень понравилось, что в Фортран можно все вычисления делать без явных циклов, просто используя массивы в выражениях (сейчас это скорее норма, да и тогда были языки, где можно так делать, но возможности были не сильно не на слуху).

На 3-м курсе делал лабораторные по численным методам, опять же на Фортране, использовал уже Фортран 90, который по синтаксису напоминал поздние Бэйсики. Блоки, отступы для читабельности и т.п. Делал отображение графиков, смеха ради, само отображение делал на Делфи, скомпилировал dll'ку и подцепил к Visual Fortran'у.

В 2010 году нам в вузе преподавали все тот же Фортран 77. Видимо, пока не уйдет последний старец, Фортран будет здесь.

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

для инженерных расчетов его, в принципе, хватает. Правда, стиль программирования он калечит знатно.

НЛО прилетело и опубликовало эту надпись здесь

в пошлом году у дочки в школе подслушал разговор учителя с завучем относительно планируемого открытия кружка по Фортрану заради олимпиад (физматшкола). Прям захлестнуло ностальгией - первая книжка по программированию, которую прочитал, была "Мак-Кракен Д., Дорн У. Численные методы и программирование на Фортране"

Привет тебе от них, стоят у меня на полке :)

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

Охреневшие у вас люди в конце 80-х макулатуру сдавали. В конце 80-х отец был единственным из своего отдела, кто эту книгу смог купить в личное пользование. Остальные в библиотеку ЦАГИ на нее в очередь писались. Или в читальный зал - пройди пешком 2 остановочки от самой дальней проходной, и сиди, выписывай команды и конструкции. А я, как белый человек, мог писать прям за компом, держа книгу на коленях.

К 1978 Фортран в СССР укоренился настолько, что в доме моих родителей появилась книжка Карпова про Фортран. Какими судьбами она там оказалась, я выснить не смог – программированием никто не интересовался.

Элементарно - в СССР многие книги были дефицитом, и бывало так, что купить редкую книжку можно было только с каким-то "довеском" в виде плохо продаваемой другой книги. У меня так появилось много довольно странных для нашей семьи книг, которые мне тем не менее нравились больше тех дефицитных, ради которых они и были куплены. Так, например, у меня в руках оказались шикарные книги про астрономию, энергетику, устройство ДВС, книжка про написание собственного компилятора и еще много похожего (мама очень много книг покупала :))

с каким-то "довеском" в виде плохо продаваемой другой книги.

Может это был способ вытащить граждан из своих информационных пузырей?)

НЛО прилетело и опубликовало эту надпись здесь

Скорее выполнение каких-то там KPI, надо было продавать, а книги брать не хотят, вот и продавали в нагрузку.

О, это же речь про продуктовые заказы!
Когда вместе с дефицитом, например - чай со слоником, растворимый кофе и тд шло что-то не очень популярное, крупы, макароны(?) (извините - забыл уже:)

Ну, что-то подобное и с книгами было, по крайней мере там где я жил, мне так довольно много любопытной литературы досталось, кстати частично и программированием я занялся из-за одной из таких книжек. Не помню уже название - там подробно описывалось как работать с программируемыми калькуляторами и "бытовыми компьютерами" - Бейсик и куча простых программ на нем. Я не имея компьютера, тогда массу программок написал в тетрадке, потом когда дорвался до настоящего компа, долго их набивал и отлаживал, очень меня это дело увлекло тогда.

"книжка про написание собственного компилятора" — это какая? название не вспомните?

Ох, не помню уже, у родителей лежит дома, но они от меня за 1000 км и сами не найдут. Книжка отличная, правда довольно академичная, там автор вводит свой ЯП для описания алгоритмов и там не только компиляторы, вспомнилось. Сначала описывается написание простого однопроходного ассемблера, потом многопроходного, потом уже компилятор для чего-то вроде Паскаля, и в конце простая ОС. Но книга старая, поэтому ОСь там что-то вроде старой DOS или чего-то такого.. Мне книга нравилась, правда из-за довольно абстрактного изложения и малого моего опыта в программировании я тогда ничего из описанного не повторил.

Если не забуду, в следующий раз когда буду у родителей посмотрю название.

ок, буду признателен. Просто примерно в те же годы интересовался темой, но как-то с литературой было туго, две книжки — одна ФиСовская (автор — Хантер), другая МИРовская, и отсиненые статьи на английском, которые заказывали не помню уже как. Ахо и Ульман формально тоже были изданы еще году в 1984, но ни в одной библиотеке в городе их почему-то не было

ага, спасибо, это как раз упомянутая мной выше МИРовская. Покупал "по открыткам" (в сентябре-октябре по каталогам издательств заполняли почтовые карточки, по ним книжный магазин делал заказ в издательство, и когда/если книги поступали — приходила эта открытка.)

"Настоящие программисты не используют Паскаль", -- не прекращает радовать!

В 1986 году мне посчастливилось выпустить в издательстве "Финансы и статистика" (Москва) книгу "Комплексирование программ в ОС ЕС":
image


Четыре главы в этой книге были посвящены комплексированию модулей, написанных на Фортране, с модулями, написанными на Ассемблере и ПЛ/1. Мне гравилось программировать на Фортране.

А мне не нравилось, но пришлось много :)


В РАФОС/ОСРВ (RT11/RSX11M) ABI был настолько логичен и строен, что вряд ли бы кому-то пришло в голову писать об этом целую книгу — пары страниц было достаточно.

пары страниц было достаточно.

Кстати, для описания языка Си Эндрю Таненбауму потребовалось всего с десяток страниц.

Крутецкая книжка, спасибо!

Старался! Когда она вышла, то моя попытка прикупить несколько экземпляров на подарки, не увенчалась успехом — раскупили всё чуть ли не в первый день. Спасибо за оценку.

В первой половине 80-х учил Фортран, Алгол и Пи-эль 1. Однако, диплом писал уже на функциональном языке ГАРФ, придуманном в ВИНИТИ Ильёй Ханаановичем Шмаиным. Вот какой-то документ по ГАРФ (в формате doc), но не уверен, можно ли по нему что-то понять.

https://www.mediafire.com/file/h303jm3czojl17x/GARF-1_ed%2526comm_VB_Jan06.DOC/file

Я не понял какая связь всего текста с обозначенными в лиде чернокожими женщинами. Как говорится: "тема ... не раскрыта". Поясните, пожалуйста.

Защищал кандидатскую в 16 году, программу для демонстрации алгоритма писал на фортране по просьбе руководителя, который хорошо его знал и мог принять участие в парной разработке. Язык зашёл, тем более что не пришлось ставить старых IDE, обошлось нажатием пары кнопок в Visual Studio, который быстро подгрузил компилятор и линтер для данного языка. Плюс записал себе в качестве ачивки в резюме =)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории