LINUX.ORG.RU

Сколько зарабатывает Pascal программист?

 , , ,


6

6

Здравствуйте. Я хочу узнать сколько можно заработать в 2022 году, зная Object Pascal и почему он не стал мейнстримным языком программирования. Почему он только изучается в школах и почему именно Pascal

Ответ на: комментарий от Xenius

Ничем не плохи, вкусно и полезно. Если есть блендер, дома за минуту можно сделать. Почему опеннетовским икспертам это слово показалось ругательным, науке неизвестно.

slepoy_pew
()
Ответ на: комментарий от hobbit

Си, конечно, эту задачу облегчает, там из скобок

Ага. Я как только скобки впервые увидел, так сразу и обмяк.

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

sparkie ★★★★★
()
Ответ на: комментарий от Xenius

Чем отличается смузи от молочного коктейля? Смузи — это фруктовый или овощной коктейль, взбитый до однородного состояния миксером. Отличие от молочного коктейля заключается в том, что приготовление смузи не подразумевает использования сахара — кроме этого, молоко не всегда входит в состав. Польза смузи заключается, прежде всего, в используемых ингредиентах — в рецепт могут входить зеленые овощи, семена чиа, а также авокадо

Паскаль и смузи

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от slepoy_pew

Если тебе плевать, через что, зачем ты влез в этот тред вообще?

Что бы образумить дурачков всяких.

MOPKOBKA ★★★★★
()
Ответ на: комментарий от Xenius

но остановило то, что нормального компилятора для неё вообще нет.

Есть :) гугли XDS excelsior

А это уже устаревшая фигня которая только для легаси, сейчас вместо неё применяют что-то вроде Coq.

Ничего не устаревшая, ты просто примерно как про модулу не очень в теме :) На сайт AdaCore сходи, удивись.

slackwarrior ★★★★★
()
Ответ на: комментарий от Xenius

Дельфи мертва

Аналогично Ada, у тебя криокамера протекла, идешь на сайт IDERA... точнее, embarcadero (но оно идере принадлежит) и удивляешься :)

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от hobbit

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

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

остановило то, что нормального компилятора для неё вообще нет.

гугли XDS excelsior

Native XDS-x86 is an optimizing ISO Modula-2 and Oberon-2 compiler for 32-bit Intel x86 systems running Windows. The Windows version comes with additional suite of tools including debugger, disassembler, etc.

Там правда ниже обещают сборку под линукс, но если софт был изначально написан под Windows, то под линуксом он не очень хорош, как правило.

Xenius ★★★★★
()
Последнее исправление: Xenius (всего исправлений: 2)
Ответ на: комментарий от Xenius

Лол, ты говорил что нет компиляторов. Компиляторы есть :) Остальное детали («как правило» тоже надо каждый раз проверять, т.к. возможно удивительное, как при твоих вангованиях смерти ады и дельфей :)).

П.С. Тут есть даже откопанная мсьями Турбо-Модула-2

https://github.com/Oric4ever/Turbo-Modula-2-Reloaded/tree/main/disk_content

А так конешшшно надо следить за темой чтоб поспевать https://freepages.modula2.org/compi.html

Археология программирования — профессия будущего.

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от grem

Про «более полезные знания» и «применение знаний» на практичной практике для решение прикладных-прикладных задач говорит человек, который не учит стажеров какой-то там фигне типа дискретной математики, но рассуждает про «квалификацию» :) Это такие у них знания. Т.е. добро если они там в «алгоритмах и структурах» хотя бы разбираются, не то что в графовых задачах, про которые даже у Вирта в учебниках по «учебным языкам» есть. А Эдик конешно «просто тралел» и временно дружил с царем против чятика.

slackwarrior ★★★★★
()
Ответ на: комментарий от hobbit

Меня в C/C++/Java другое вымораживало - то, что определение функции/метода начинается так же, как определение переменной

Про это есть платиновые вопросы про подводные камни для умничания интервьюэров на собеседованиях :) Запоминание тонн контринтуитивного, либо чреватого UB + закостыленного для избегания этого в новых стандартах и прочих подпорок под изначально срезанные углы в дизайне языка.

slackwarrior ★★★★★
()
Ответ на: комментарий от firkax

Когда схожие конструкции используются для разного предпосылки возникают для того, что многие считают будто можно миксовать побитовые операторы и логические :) Про выбор метода инициализации объектов или «компеляние в голове» и угадывание порядка исполнения и выбора функций из N вариантов на основании темных углов стандарта я уже не говорю.

П.С. 666 гет :)

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от bugfixer

Про брейндэмэдж он бы Вирту в литсо не сказал (Линус даже храбро не назвал «дизайнера языка» :)) А про goto ему пришлось бы боксировать с Дейкстрой еще. С ими обоими, которые дизайном систем, языков и компиляторов занимались когда аквалангист еще у бати в штанах не шевелился. Он заочно подебил в чатике своей секты (а LKML это чятик и есть, точнее был, пока Линуса не насадили на CoC) — это такой себе диспут :)

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 5)
Ответ на: комментарий от yu-boot

«Упрощает» выходы из сложносочиненных (вложенных) циклов дизайнерам циклов, которые не задумывались что... возможно вложенные циклы им не нужны... или, в связи с налогом на промах кэша — не нужны досрочные выходы из :)

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

или, в связи с налогом на промах кэша — не нужны досрочные выходы из :)

Скорее промахи предсказателя.

Я возможно мысль теряю - можно поподробнее?

bugfixer ★★★★★
()
Ответ на: комментарий от slackwarrior

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

Сам себя он «затралел».

grem ★★★★★
()
Ответ на: комментарий от bugfixer

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

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от grem

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

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

Сам себя он «затралел».

Это виляниевлияние царя его сгубило :)

slackwarrior ★★★★★
()
Ответ на: комментарий от firkax

Это просто два примера конструкций, часто применяемых без приложения головы. «Не напрягает», «норм», потом оказывается что «похожие» операторы не эквивалентны, и выстрел в ногу где-то рядом. Вчера объяснял веб-программисту разницу между & и &&. Он не знал что их миксование может привести к странному, не говоря уж об утере такой штуки как ленивое вычисление лог. выражения. На js он программирует гораздо дольше меня :)

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

пафосно рассуждает про «квалификацию» и «знания»

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

bugfixer ★★★★★
()
Ответ на: комментарий от bugfixer

Пожалуйста, начните с того где-бы я публично заявлял про свои квалификацию и знания

Э... ты точно все на свой счет воспринимашь :) Просто смотри по ссылкам кто кому о чем отвечает. У грема был диалог с макскомом :) Макскому не нравится паскаль, потому что в более других языках какие-то более лудшые «знания» и «квалификация» (какая там квалификация, если тупо учат фичи языка без понятия о более универсальных основах, о которых учили на паскале — по книжкам того же Вирта — ХЗ). К тебе эта «ветка диалога» точно не относится :)

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 2)
Ответ на: комментарий от monk

Для Паскаля and и or не работают. Надо and_then и or_else

Это в практической плоскости не совсем так.
Начиная с довольно древних версий TP существует опция $B, позволяющая отключить краткое вычисление логических выражений, унаследованная и уже умершими компиляторами, а также и FPC, и Delphi.

https://www.freepascal.org/docs-html/current/prog/progsu4.html

https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Boolean_short-circuit...

bormant ★★★★★
()
Ответ на: комментарий от slackwarrior

Э… ты точно все на свой счет воспринимашь :)

Я на секунду подумал что отсыл вот на это.

Хотя я там ничего такого не сказал. Если нет - ну и славненько ;)

bugfixer ★★★★★
()
Ответ на: комментарий от bugfixer

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

slackwarrior ★★★★★
()
Ответ на: комментарий от slepoy_pew

А Си на Асме, что ты на это скажешь?)

Что это не так: Си, он как метапрог будущего, – сам на себе

pihter ★★★★★
()
Ответ на: комментарий от untitl3d

Но ты точно так же как и все прочие на критику отвечаешь что у нас неправильный аджайл.

Аджайл везде одинаковый, это вы неправильно понимаете для чего он нужен.

Я знал, что ты так скажешь :)

Но, опять же, не везде аджайлы используются так

Ну а в манифесте у них написано про смену задачи на ходу. Может это вы неправильный аджайл используете? )

pihter ★★★★★
()
Ответ на: комментарий от Aber

Я бы предложил сделать первым языком Java

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

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от sparkie

У нас в универере занятия по Сям вела тётка из какого-то НИИ. Так вот код она писала хрен пойми какой, без бутылки и не разберёшь)

У нас в универе тетка вела си, так вот она называла впихивание как можно большего количества операндов в как можно меньшую строку (максимально непонятно) – «изящно»

pihter ★★★★★
()
Ответ на: комментарий от slackwarrior

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

А то что Эдик со строками накосячил тогда… всем и так понятно, что его задачи не в обработке строк заключаются. Бывает.

grem ★★★★★
()
Ответ на: комментарий от saahriktu

это массивы. Даже если они называются строками в стандарте.

Потому что строка это и есть массив. И дело не в стандарте языка, а в сути понятия. И в Паскале строки (которые string) это тоже массивы символов. Представление отличается от сишного (LString/ASCIIZ), и, считай, перегружены операторы сложения и присваивания.

firkax ★★★★★
()
Ответ на: комментарий от bugfixer

Это, в целом, ничего не меняет. Разве что элементы массива могут стать 16/32-битными. UTF-8 всё так же 8-битный массив, потому что если пытаться индексировать в нём юникодные символы переменной длины - получатся жуткие оверхеды почти везде где программист решит этой «фичей» воспользоваться. Или в современных Паскалях именно такая ситуация?

firkax ★★★★★
()
Ответ на: комментарий от monk

Если сортируешь диапазон, в процессе сортировки всё равно вмешиваться нельзя

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

byko3y ★★★★
()
Ответ на: комментарий от upcFrost

Нет, фундаментальное препятствие — это «у нас есть куча засохшего legacy, которое мы никому не отдадим».

Эт почему? Даже у идеи из примера есть СЕ которое лежит на гитхабе

Это и есть засохшее легаси. Смысл создания идеи изначально заключался в том, чтобы вместо устранения недостатков жавы подпереть эти недостатки костылями. И дальше пошло как снежный ком. Я вот недавно писал крестовый код на VS Code БЕЗ сишного плагина, и с удивлением обнаружил, что автодополнение даже так работает неплохо, ровно как и объявления можно находить через быстрый поиск по файлам. К слову, у VS Code часть индексатора писана на WASM. Остальное — от лукавого.

byko3y ★★★★
()
Ответ на: комментарий от monk

Технически, «for» можно убрать. Но в целом лучше синтаксиса для параллельного обхода не придумать

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

byko3y ★★★★
()
Ответ на: комментарий от slepoy_pew

Там другая логика, которая тоже имеет право на существование. Видишь определение int, сразу понятно, что дальше будет код, который в итоге сократится до int. В Си/Си++ есть 100500 других нелогичностей

Не имеет. K&R чисто обосрались и никакого оправдания у них нет. Я недавно решил почитать книжку beautiful code, встретил главу с керниганом про реализацию регулярных выражений на Си, закрыл книгу и сжег ее. Там он без тени смущения рассказывает про «херак-херак — и в продакшен», кто из них круче за пять часов написал говнокод, который потом 50 лет крутился на никсовых серверах.

Так вот, Си. Самая главная проблема в том, что даже компилятор с большим трудом распознает определения функции. Например, попытайся за компилятор ответить на вопрос «что значат эти строки?»:

(int * A)(B);

int * A(B arg);

int * A(*B)()

А еще лучше — ответить на тот же вопрос с позиции парсера, который пытается проиндексировать символы в сорцах.

byko3y ★★★★
()
Ответ на: комментарий от untitl3d

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

О чем спор? Ты прав — манагеры могут лишь пытаться следить за прогрессом, и то зачастую эта успешность сомнительна, зачастую можно распознать только серьезные провалы за большие периоды времени. И он прав: сам по себе тот же Agile — это непонятно что, против всего плохого за всё хорошее, по этой причине ни подтвердить, ни опровергнуть пользу Agile невозможно, просто потому, что никто не знает, что такое Agile. Зато для манагера это удобный повод оправдать свое существование на должности, мол «я не занимаюсь непонятно чем — я практикую Agile». Валяешься в луже — практикуешь Agile, тусишь в клубе — элемент Agile, играешь в доту в рабочее время — это Agile-техника. И пойди докажи, что я не прав.

byko3y ★★★★
()
Ответ на: комментарий от bread

но какое-нибудь == тоже можно заменить на не_неравно

Странно, что питонщики так не сделали. Было бы весьма питонично

Весь питон в том виде, который он существует сейчас, был сделан бездарным архитектором за 3 месяца. Синтаксис в значительной степени слизан с Си, скажите спасибо, что хотя бы функции обозначены def-ами (на самом деле без него просто-напросто тяжело написать транслятор для ЯП).

byko3y ★★★★
()
Ответ на: комментарий от MOPKOBKA

Уже добавили тайпхинты давно, и генерики с классами есть в отличие от паскаля. И строки нормальные. И IDE нормальные

В FPC уже довольно давно обобщенные типы имеются.

Другое дело, что никто не знает, что такое «IDE нормальные». Это которые жрут по нескольку ГБ оперативы, тормозят, и ничем в итоге не помогают, кроме автодополнения и поиска объявления, которые можно было бы выполнить обычным текстовым индексатором без анализа синтаксиса? Python by-design не поддается статическому анализу, потому что любая его строка может значить что угодно, вплоть до того, что сорцы проходят кастомную трансляцию и могут значить что угодно.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Валяешься в луже — практикуешь Agile, тусишь в клубе — элемент Agile, играешь в доту в рабочее время — это Agile-техника. И пойди докажи, что я не прав

Я правильно понял - Вы же сейчас о собственном experience рассказываете?

bugfixer ★★★★★
()
Ответ на: комментарий от soomrack

Да, я считаю, что JavaScript и C++ были грамотно спроектированы для своего времени. Они позволили быстро решать задачи, которые было необходимо решать тогда

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

Ты пробовал использовать gtk? Это же адский ад, очень тяжело отлаживать, да и писать ясный код тоже не просто

Я после GSoC в гноме забросил сишку лет на десять. Да, очень тяжело, но не потому, что C++ так хорош, а потому, что Си настолько ужасен, в нем настолько много способов выстрелить себе в ногу, причем, порой после этого не сразу удается заметить факт выстрела. C++ в значительной степени пытался решить именно эту проблему, но по факту создал еще столько же новых проблем.

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

С подходом GTK — да, но далеко не весь сишный код так писан.

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

Вот именно C++? Не Delphi? Не Visual Basic? Не Java?

Браузер 2000 года и браузер 2022 года это несопоставимые по сложности и по объему кода проекты, аналогично можно сказать и про офисы, и про операционки, и про много другое

Тот факт, что хром начали писать в 2008 году, не значит, что хром нельзя было написать в 2000. Браузером 2022 года невыносимо пользоваться на десктопе даже 2005 года — я пробовал. В этом смысле браузеры серьезно деградировали. Особенно это актуально для хохлов, которые каждый ватт-час считают, когда индустрия им грит «плюс-минус 100 ватт разницы не дают». Особенно с мобилками, для которых приходится оборудовать общественные пункты подразядки, потому что «мобилка» нынче работает без подзарядки максимум день. Такой вот «прогресс». Для справки — мой кнопочный работает 30 дней автономно.

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

«Мир программирования джуна, слепленный из популярных книжных клише (паттернов)». Я выше по треду уже давал правильный ответ: быстрее и сложнее стало возможным писать из-за двух вещей — снижения требований и наличия готовых решений. Всё. Все эти аджайлы, IDE, TDD, паттерны, кодревью, соглашения об использовании пробелов вместо табов — они делают разработку приятнее, особенно в больших командах, но писать код можно было бы вообще без всего этого, и результат бы не сильно отличался.

Если посмотреть на эволюцию конкретно C++, то там большинство нововведений просто пытаются исправить недостатки исходного дизайна. Разве что async/await стало чем-то новым, но там не всё так просто, потому что на самом деле асинхронный код непредставим в виде обычного пошагового алгоритма, ведь между шагами возможно изменение контекста, которого в модели машины тьюринга не бывает. Например, как я выше упомянул, ты итерируешься по массиву, а у массива внезапно меняется длина.

В GPU все рванули потому, что они стали достаточно мощными для решения задач моделирования и численной оптимизации грубыми методами

NVIDIA GeForce4 Ti 4600 — 2002 год, 2.4 ГТекселя/с, что примерно эквивалентно 24 ГФлоп/с. транзисторов примерно как в целероне того же года, то есть, около 30 Вт TDP;
GeForce 8800 GS — 2008, 26.4 ГТ/с, 264 ГФлоп/с, 100 Вт;
RTX 1650 Super - 2022, 122 ГТ/с, 4400 ГФлоп/с, 100 Вт.

Никакого сверхъестественного роста не было. У последних карточек написаны сверхъестественные цифры, которые на самом деле достижимы только несколькими инструкциями, цифра 1200 ГФлоп/с более реалистичная для 1650. При том, что в 2002 году на той же мощности уже было 75 ГФлоп/с — и, тем не менее, индустрия не рвалась на GPGPU, хотя последние новые методы реализации нейронок были придуманы уже в конце 90-х годов.

byko3y ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.