Каков худший язык программирования, с которым Вы когда-нибудь работали? [закрытый]

Может ли быть так, что в MS SQL неявные транзакции запускаются при выполнении операторов DDL и DML. Если вы отключите эту опцию, это поможет, используйте SET IMPLICIT_TRANSACTIONS

РЕДАКТИРОВАТЬ: другая возможность - вы не можете комбинировать CREATE VIEW с другими операторами в том же пакете. CREATE TABLE в порядке. Вы разделяете партии с помощью GO.

EDIT2: вы МОЖЕТЕ использовать несколько DDL в транзакции, если они разделены GO для создания разных пакетов.

44
задан 59 revs, 13 users 69% 23 May 2017 в 12:10
поделиться

100 ответов

APF. Вам, вероятно, повезло, что вы никогда не слышали об этом кошмаре. Это было дорогостоящее дополнение к IMS-системе иерархической базы данных / мониторинга транзакций мэйнфрейма IBM. С чего начать.

Не было поддержки массивов. Если у вас есть массив из десяти элементов, вы хорошо закодировали ITEM1, ITEM2 и т. Д. И написали десять строк кода для обработки каждого элемента.

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

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

Нет отладчика, «компилятор» только проверял базовый синтаксис большинства ошибок, обнаруженных во время выполнения, с одним из четырех сообщений об ошибках.

Одно из этих сообщений об ошибках было «НЕВЕРНО» DATA TYPE '- вот и все,

3
ответ дан 26 November 2019 в 21:32
поделиться

Что касается языков, с которыми я сталкивался, я буду голосовать за COBOL и Scheme.

COBOL был окончательным доказательством того, что крупные бизнес-компании никогда не должны писать язык программирования (и это скоро по специальности бизнес - СНГ). У вас не должно быть возможности писать полусвязные романы и компилировать их во что-то. Я знаю, что его использовали 40 лет назад, но кто-то портировал его на COBOL.NET, чтобы громко кричать.

Второе место заняла Scheme, у которой был ровно один тип переменных: связанный список. Пытаться научиться думать в нем - все равно что пытаться научиться думать как белый медведь, если вы марсианин американского происхождения. Это совершенно чуждо всему остальному.

С точки зрения языков, которые я использовал профессионально, VBScript безнадежно. Это как VB только хуже. Однажды я попытался реализовать алгоритм MD5 в VBScript. Первое, что мне нужно было сделать, это реализовать долбанные операции битового сдвига. Вместо того, чтобы изобретать велосипед, я пошел искать воплощение. Тот, который я нашел, я не шучу, следовал следующему алгоритму:

  1. Преобразование вашего числа в шестнадцатеричное
  2. Преобразование шестнадцатеричного числа в строку, например, 0x08 -> «08»
  3. Использование оператора гигантского выбора case преобразуйте каждую цифру в строку из единиц и нулей, например, «8» -> «00001000»
  4. Теперь, когда у вас есть гигантская строка из единиц и нулей, сместите их по мере необходимости

Это был полный беспорядок . И это был лучший алгоритм, который я нашел.

(Предостережение: это алгоритм, насколько я помню. Это было 6 лет назад. :))

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

  1. Преобразование вашего числа в шестнадцатеричное
  2. Преобразование шестнадцатеричного числа в строку, например, 0x08 -> «08»
  3. Использование оператора гигантского выбора case преобразуйте каждую цифру в строку из единиц и нулей, например, «8» -> «00001000»
  4. Теперь, когда у вас есть гигантская строка из единиц и нулей, сместите их по мере необходимости

Это был полный беспорядок . И это был лучший алгоритм, который я нашел.

(Предостережение: это алгоритм, насколько я помню. Это было 6 лет назад. :))

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

  1. Преобразование вашего числа в шестнадцатеричное
  2. Преобразование шестнадцатеричного числа в строку, например, 0x08 -> «08»
  3. Использование оператора гигантского выбора case преобразуйте каждую цифру в строку из единиц и нулей, например, «8» -> «00001000»
  4. Теперь, когда у вас есть гигантская строка из единиц и нулей, сместите их по мере необходимости

Это был полный беспорядок . И это был лучший алгоритм, который я нашел.

(Предостережение: это алгоритм, насколько я помню. Это было 6 лет назад. :))

0x08 -> «08»
  • Используя гигантский оператор выбора регистра, преобразуйте каждую цифру в строку из единиц и нулей, например, «8» -> «00001000»
  • Теперь, когда у вас есть гигантская строка из единиц и 0s, перемещайте их по мере необходимости
  • Это был полный беспорядок. И это был лучший алгоритм, который я нашел.

    (Предостережение: это алгоритм, насколько я помню. Это было 6 лет назад. :))

    0x08 -> «08»
  • Используя гигантский оператор выбора регистра, преобразуйте каждую цифру в строку из единиц и нулей, например, «8» -> «00001000»
  • Теперь, когда у вас есть гигантская строка из единиц и 0s, перемещайте их по мере необходимости
  • Это был полный беспорядок. И это был лучший алгоритм, который я нашел.

    (Предостережение: это алгоритм, насколько я помню. Это было 6 лет назад. :))

    3
    ответ дан 26 November 2019 в 21:32
    поделиться

    Оберон.

    В первый год обучения в университете все должны были программировать на Обероне. Я думаю, что идея заключалась в том, чтобы убедиться, что никто не получит фору. Язык был привязан к Oberon OS / GUI, что было ужасно! Не уверен, что что-то изменилось, но это определенно был мой худший опыт программирования.

    3
    ответ дан 26 November 2019 в 21:32
    поделиться
    ​​

    Определенно худший язык, который я когда-либо использовал, был Оз . Это неудачная попытка создать многопарадигмальный язык программирования. Как вы понимаете, в конечном итоге он оказывается очень непонятным и имеет чрезвычайно сложный синтаксис. У вас есть разные разделители, чтобы отметить, что вы работаете функционально или императивно. Я всегда нахожу несколько странным определение классов с функциональными частями методов без побочных эффектов.

    3
    ответ дан 26 November 2019 в 21:32
    поделиться

    Lingo, для Shockwave Flash (или что там было). Довольно ужасная, простая вещь с слишком динамичной системой типов. Редактор - отстой, отладчик - отстой.

    Наверное, не помогло то, что приложение, которое мне пришлось взять на себя, было написано scriptkiddies, которое использовало тип переменной для управления потоком управления. (Если это строка, мы находимся в режиме A, поэтому это означает X, если это int, мы в режиме B, поэтому это означает Y). $ £ € £ @ £ $ # "¤ #" !!

    Мне нравится Python, и я полагаю, что там можно было сделать что-то не менее ужасное, но сообщество и инструменты намного лучше и точнее.

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    FOCUS, рекламируется как «4GL» (язык четвертого поколения). Некоторые системы могли использовать FOCUS, например SQL, для выполнения запросов к базе данных, результаты которых были заключены в BASIC или какой-либо другой процедурный язык, но система, над которой я работал в Boeing в 80-х, этого не имела. Вроде как очень плохой специалист для ведения бизнеса. Это была единственная работа программиста, которую я ненавидел.

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    Для моего старшего дизайнера мы запрограммировали камеру Canon для создания карт глубины с использованием CHDK . Большая часть кода была написана на C, но вы должны взаимодействовать с ним с помощью этого нелепого языка под названием uBasic. По сути, это не было реализовано с использованием подходящего парсера, поэтому переменные могут состоять только из одной буквы, это безумно медленно, и если вы сделаете ошибку, камера просто отключится.

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    PC-FOCUS

    Я работал над системой управления складскими запасами, в которой подсистема бэк-офиса была реализована в PC-FOCUS.

    Все, что нужно сказать об этом языке, это что в руководстве по программированию есть глава из 100+ страниц под названием «Обходные пути».

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    Я собирался ворчать и стонать насчет Java, но, очевидно, это не ТАК плохо, и это было бы равносильно троллингу, и, кроме того, я только что вспомнил кое-что похуже:

    Магия II.

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

    Магия «программирования» включает в себя заполнение полей в таблицах, описывающих эти три фазы жизни программы. У него также был дизайнер экрана в текстовом режиме, связанный со всем этим беспорядком. Обученный пользователь Magic мог быстро выводить отчеты и экраны ввода данных, что порадовало руководство.

    Проблема для меня заключалась в том, что язык имел минимальные возможности абстракции. Вы можете определять подпрограммы, которые вы можете вызывать из других подпрограмм. Вот и все. Никаких структур данных, кроме таблиц базы данных, никаких массивов в памяти (хотя вы могли бы определять новые таблицы!)

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

    Что еще хуже, в «программе» были фрагменты, которые были спрятаны в полях, которые нужно было увеличивать, чтобы увидеть - определенные выражения и т. Д. Поэтому вы никогда не сможете просто прочитать экран кода и узнать, что он делает.

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

    Недавно я встретил бывшего коллегу, который работал со мной, пока я использовал Magic. Прошло почти 20 лет с тех пор, как я сделал это, но она была очень рада рассказать мне, как ей было поручено поддерживать один из моих проектов, и что она объявила поражение, когда где-то там обнаружила рекурсивную процедуру. Она никогда не видела, чтобы кто-нибудь реализовал рекурсию в Magic. Ни у кого никогда не было. Это была неизведанная территория. Я не думаю, что кто-то осознал, что этот инструмент способен к рекурсии.

    Проект пришлось переписывать в спешке, прежде чем это заставило чей-то мозг взорваться.

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

    Недавно я встретил бывшего коллегу, который работал со мной, пока я использовал Magic. Прошло почти 20 лет с тех пор, как я сделал это, но она была очень рада рассказать мне, как ей было поручено поддерживать один из моих проектов, и что она объявила поражение, когда где-то там обнаружила рекурсивную процедуру. Она никогда не видела, чтобы кто-нибудь реализовал рекурсию в Magic. Ни у кого никогда не было. Это была неизведанная территория. Я не думаю, что кто-то осознал, что этот инструмент способен к рекурсии.

    Проект пришлось переписывать в спешке, прежде чем это заставило чей-то мозг взорваться.

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

    Недавно я встретил бывшего коллегу, который работал со мной, пока я использовал Magic. Прошло почти 20 лет с тех пор, как я сделал это, но она была очень рада рассказать мне, как ей было поручено поддерживать один из моих проектов, и что она объявила поражение, когда где-то там обнаружила рекурсивную процедуру. Она никогда не видела, чтобы кто-нибудь реализовал рекурсию в Magic. Ни у кого никогда не было. Это была неизведанная территория. Я не думаю, что кто-то осознал, что этот инструмент способен к рекурсии.

    Проект пришлось переписывать в спешке, прежде чем это заставило чей-то мозг взорваться.

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

    Недавно я встретил бывшего коллегу, который работал со мной, пока я использовал Magic. Прошло почти 20 лет с тех пор, как я сделал это, но она была очень рада рассказать мне, как ей было поручено поддерживать один из моих проектов, и что она объявила поражение, когда где-то там обнаружила рекурсивную процедуру. Она никогда не видела, чтобы кто-нибудь реализовал рекурсию в Magic. Ни у кого никогда не было. Это была неизведанная территория. Я не думаю, что кто-то осознал, что этот инструмент способен к рекурсии.

    Проект пришлось переписывать в спешке, прежде чем это заставило чей-то мозг взорваться.

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

    Недавно я встретил бывшего коллегу, который работал со мной, пока я использовал Magic. Прошло почти 20 лет с тех пор, как я сделал это, но она была очень рада рассказать мне, как ей было поручено поддерживать один из моих проектов, и что она объявила поражение, когда где-то там обнаружила рекурсивную процедуру. Она никогда не видела, чтобы кто-нибудь реализовал рекурсию в Magic. Ни у кого никогда не было. Это была неизведанная территория. Я не думаю, что кто-то осознал, что этот инструмент способен к рекурсии.

    Проект пришлось переписывать в спешке, прежде чем это заставило чей-то мозг взорваться.

    Прошло почти 20 лет с тех пор, как я сделал это, но она была очень рада рассказать мне, как ей было поручено поддерживать один из моих проектов, и что она объявила поражение, когда где-то там обнаружила рекурсивную процедуру. Она никогда не видела, чтобы кто-нибудь реализовал рекурсию в Magic. Ни у кого никогда не было. Это была неизведанная территория. Я не думаю, что кто-то осознал, что этот инструмент способен к рекурсии.

    Проект пришлось переписывать в спешке, прежде чем это заставило чей-то мозг взорваться.

    Прошло почти 20 лет с тех пор, как я сделал это, но она была очень рада рассказать мне, как ей было поручено поддерживать один из моих проектов, и что она объявила поражение, когда где-то там обнаружила рекурсивную процедуру. Она никогда не видела, чтобы кто-нибудь реализовал рекурсию в Magic. Ни у кого никогда не было. Это была неизведанная территория. Я не думаю, что кто-то осознал, что этот инструмент способен к рекурсии.

    Проект пришлось переписывать в спешке, прежде чем это заставило чей-то мозг взорваться.

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    Я голосую за DB / C DX, основанный на DATABUS. Я уверен, что большинство из вас никогда не слышали об этом, а те, кто слышал ... Мне очень жаль ...

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    Худший язык программирования? - Brainfuck

    Я сам с этим не работал, но я бы назвал это худшим. Это обычно используется как вызов, а не для производства (скорее, мне скучно в эти выходные, давайте посмотрим, смогу ли я переписать в нем крестики-нолики). Ознакомьтесь с программой Hello World на вики.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    PowerDynamo

    Это был продукт Sybase, который хранил код веб-приложения прямо в базе данных вместе с вашими данными. Не было области видимости переменных, а функция strlen () по сути была генератором случайных чисел.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    CodeGear Delphi

    Это действительно не тот язык, который мне не нравился, а IDE: CodeGear RAD Studio для Delphi. Это, пожалуй, худшая, самая глючная и безотказная IDE, которую я когда-либо использовал. Я и другие программисты Delphi обычно теряли часов времени разработки каждый день из-за сбоя или зависания среды IDE.

    После того, как мы установили CodeRush, приложение стало практически непригодным для использования. Он падал с регулярными интервалами в 5-15 минут, даже без вмешательства пользователя. Хуже того, таинственные ошибки были вызваны базовой отладкой, например, достижением точки останова (обычно отладчик попадал в точку останова и просто зависал на своей дорожке на тривиальной строке, например, при назначении переменной. Ничего подобного. do заставит его двигаться дальше). Если вы оставили программу в покое, он оставался стабильным до получаса, прежде чем генерировал какое-то исключение памяти.

    Итак, после того, как мы потратили тысячи долларов на лицензии CodeGear RAD Studio, никто не захотел его использовать. К тому времени, как я ушел из компании, все наши проекты Delphi были написаны на VIM.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    Smalltalk.

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

    • Не было исходного кода, который вы могли бы просмотреть. Было просто дерево классов, в котором вы могли создавать и редактировать реализации методов. Нет возможности сохранить код, кроме как вырезать и вставить их в блокнот. Вы можете сохранять сеансы, но это бинарные дампы.

    • Вся среда была написана на Smalltalk, и, черт возьми, это было медленно. Вы могли видеть, как весь экран перерисовывается каждый раз, когда вы нажимаете клавишу. В редакторе (который вам пришлось использовать из-за отсутствия исходного кода загрузки / сохранения) не хватало основных функций редактирования, таких как режим вставки / переопределения.

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

    • Все было объектом. Переопределите оператор сравнения логического значения, и вся система потерпит крах.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    Webspeed и SpeedScript .. Просто ужасно, без объяснений :)

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    У SNOBOL были некоторые изящные особенности и возможности обработки строк, более широкие, чем у Perl. Он также имел один тип оператора: <базовая строка> <строка соответствия> = <строка замены>: S (<метка>): F (<метка>) , где можно было опустить большинство компонентов. Структуры управления создавались путем перехода к той или иной метке (если она есть) в зависимости от того, можно ли найти строку соответствия в базовой строке. Строки могут включать в себя различные функции и подстроки, поэтому разумная строка SNOBOL может включать все синтаксические деревья, упомянутые в конце вашего любимого стандарта языка программирования.

    Было тривиально написать в нем синтаксический анализатор (хотя это не обязательно быть хоть сколько-нибудь эффективным), но что-либо вроде арифметики или циклов было проблемой.

    3
    ответ дан 26 November 2019 в 21:32
    поделиться

    Без сомнения, это был SmallTalk. Но только формально: реальный язык был в порядке, но IDE, которую мы использовали для этого класса, была VisualWorks, которая, по отдельности, является худшей IDE из всего, что я когда-либо испытывал. Вот несколько примеров ужасов:

    -Вы не можете сохранить изображение (которое представляет собой весь ваш проект, завернутый в один файл), если каждый бит кода не является полностью синтаксически и семантически правильным. -Он часто дает сбой, а интерфейс ужасно оформлен. Кнопки будут вытягиваться из окна и тому подобное. - Однажды VisualWorks завис на мне после того, как я сделал около 2-3 часов новой работы, к сожалению, без сохранения. К счастью (подумал я), кнопка сохранения все еще работала. Так что, вздохнув с облегчением, я сохранил свой проект. Но из-за метода VisualWorks сохранения вашего проекта как изображения, когда я повторно открыл свой файл, он сохранил мой проект в замороженном состоянии. В итоге мне пришлось вернуться к более ранней версии моего кода и потерять пару часов работы.

    И единственный худший симптом ужасного дизайна IDE: -Есть только один шаг отмены. И НЕ ТОЛЬКО ЭТО. Слышать это. Если вы удалите строку кода, переместите курсор в другое место, а затем нажмете «отменить», она вставит строку кода туда, где сейчас находится курсор, а не туда, где изначально была строка. Что это за хрень?? Я думаю, что у чертов LOTUS 1-2-3 были лучшие возможности отмены, чем у этого!

    PS Я знаю, что не говорю о языке, но поскольку это отражало мой опыт работы с языком, я чувствовал, что все еще могу разумно дать мой ответ в этой ветке. :)

    3
    ответ дан 26 November 2019 в 21:32
    поделиться

    dBase II (это 2, а не 3): К счастью, я не часто им пользовался, прошло уже более двадцати лет, так что я мало что помню, кроме боли! IIRC, его либеральное использование специальных символов в именах переменных (и других местах?) Сделало его почти невозможным для чтения, и ему не хватало управления потоком. Казалось, что 3 получил гораздо больше применения (и уже было, когда я использовал 2, но мой работодатель был слишком дешев для обновления), но я не знаю, было ли это лучше.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    может быть, ФОРТРАН .... Я все еще havinh incubius.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    «Visual C ++» .... Так много устаревшего кода переплетено .... повсюду.

    Заставило меня полюбить Obj-C.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    OPS5. Теперь даже мысль об этом заставляет меня плакать.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    For me, the answer is Crystal Syntax, the BASIC-like language used by Crystal Reports. Trying to accomplish anything other than mere comparisons is difficult at best and impossible at worst. Granted, they do arrays fairly well:

    {some_database_field} IN ["firstValue", "secondValue", "thirdValue"]
    

    But the following doesn't work at all:

    {some_database_field} NOT IN ["firstValue", "secondValue", "thirdValue"]
    

    Even though the language does have a NOT operator.

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    Полусырое объектно-ориентированное расширение для C. Во встроенных системах по-прежнему существует множество проектов только на C. Таким образом, время от времени кто-то думает, что его объектно-ориентированное решение - это все, что требуется для придания этому проекту формы ... оставляя где-то в конечном итоге огромную неразбериху.

    Обычно человек начинает со скромных и благородных целей, но он просто ускользает от него каждый раз. Он передает другому программисту, который так хорошо думает. ООП на языке C, как аккуратно, а затем убивает и без того трагический код, который он не понимает. Вскоре он уже не подлежит ремонту. Худший из тех, что я видел: ни один драйвер не мог скомпилировать без включения всех заголовков объектов, которые собираются его использовать, а также файлов заголовков для этого пользователя компонента до самого высокого уровня.

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    LabVIEW (это вообще считается языком?)

    Это было ужасно. Если вы хотите расширить этот термин, HTML тоже отстой, как и XML.

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    Javascript before the existence of FireBug and coding it using a Notepad.

    It was the most horrible code in my life, JS was case sensitive and I had lot of headaches. IE detect errors in a weired way...

    3
    ответ дан 26 November 2019 в 21:32
    поделиться

    Да ладно. На 3 страницах нет упоминания о Forth ? Серьезно?

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

    Мои искренние сожаления пяти людям во Вселенной, которые обрабатывают реальность в обратной полированной нотации. Или я должен сказать что-то вроде «извинения +»?

    2
    ответ дан 26 November 2019 в 21:32
    поделиться

    Любой язык может быть худшим в умелых руках. А неправильная командная работа только усугубляет ситуацию. Я имею в виду, что если вам не нравится стрелять себе в ногу, вы всегда можете попробовать прострелить ногу коллеге. Пока что лучший язык, который я видел, - это C ++. Этим вы действительно можете навредить коллегам.

    3
    ответ дан 26 November 2019 в 21:32
    поделиться

    РПГ

    Не говоря уже о ролевых играх, ребята. В колледже я изучал COBOL, а также RPG IV. Если и есть какой-то язык, который заставляет меня выкопать себе глаз вилкой, то это RPG. Это в значительной степени «основанный на столбцах» код, поскольку вы не просто пишете код слева направо, вы должны быть уверены, что находитесь в правильных столбцах. Причина этого в том, что язык изначально был создан для разработки перфокарт.

    Я не могу записывать в файл!

    Ну да, манекен, вы забыли заглавную F в столбец 68.

    3
    ответ дан 26 November 2019 в 21:32
    поделиться

    Господи, вы хотите сказать, что никто не использовал PL / SQL ? Порождение ада, которое является Oracle, интерпретируется и живет в контексте Oracle Server. Весь вывод буферизуется, пока программа не будет завершена. Отладить практически невозможно. Га ... Я чувствую, что просто подумаю об этом.

    4
    ответ дан 26 November 2019 в 21:32
    поделиться

    Dataflex 2.3 и VDF4.

    VDF 4 - это то, что меня оттолкнуло от Dataflex.

    Одной из самых глупых вещей, которые они сделали, было использование сообщения Windows для третьей кнопки мыши для связи между IDE и компилятором. Он работал нормально, если у вас не была трехкнопочная мышь.

    3
    ответ дан 26 November 2019 в 21:32
    поделиться
    Другие вопросы по тегам:

    Похожие вопросы: