1 января не стало Никлауса Вирта, одного из ведущих теоретиков программирования, который не дожил всего месяц до своего 90-летия....Подробнее: https://www.opennet.ru/opennews/art.shtml?num=60387
F
Вот оно, поколение зумеров. Не могут даже пару слов на родном русском сказать. Вот что ты своим "F" хотел сказать? Что ты мaлолeтний необразованный з@др0т, который любит онлайн-игры? Ну это мы поняли. А ты прикинь, на твоем могильном камне вместо слов будет красоваться одна единственная буква - "F". Прикольно? Не, ну а чо...
Уважаемый "Дрочеслав", F - это знак скорби по ушедшему доброму человеку, знак уважения и грусти, такой грусти, что не найдётся таких слов, которыми можно в должной мере описать свои чувства, F давно вышел за рамки игр.
Спасибо Никлаус Вирт, за всё. F
Слов нет, но одна буква все описывает? Какой же скыдный у вас словарный запас.
Какая ему разница что будет на камне? Он же всё равно ничего не увидит ибо пойдёт в GC
Ну так расшифруй свою аббревиатуру, что за "F"? "Fuck" или "Fall"? Я знаю, что есть американская аббревиатура "RIP". Про "F" читаю в первый раз.
Загугли Press F to pay respects
Расшифруй свой мозг!
Press F to pay respects это знак не уважения! Позор! Знал бы, не писал эту чушь!
Нажмите F, чтобы почтить память») — интернет-мем, возникший в игре Call of Duty: Advanced Warfare, шутере от первого лица 2014 года из франшизы Call of Duty компании Activision.Короче, тупой мем для тупых подростков, играющих в тупой шутер.
> Нажмите F, чтобы почтить память») — интернет-мем, возникший в игре Call of
> Duty: Advanced Warfare, шутере от первого лица 2014 года из франшизы
> Call of Duty компании Activision.Да. И тогда все возмутились такому выражению почтению памяти. Это выглядит максимально убого.
> Короче, тупой мем для тупых подростков, играющих в тупой шутер.
Именно так!
Ну я и не писа,л просто объяснил тебе устаревшему
>Я знаю, что есть американская аббревиатура "RIP". Про "F" читаю в первый раз.Аналогично,впервые увидел.
А по теме новости могу сказать что впечатлило вот это:
"автор 10 языков программирования"
ДЕСЯТИ! Как вообще один человек на такое способен?
Я за всю жизнь меньше языков выучил. А он - создал!
Читая о таких людях, осознаю собственное интеллектуальное убожество:(
>>Я знаю, что есть американская аббревиатура "RIP". Про "F" читаю в первый раз.
> Аналогично,впервые увидел.
> А по теме новости могу сказать что впечатлило вот это:
> "автор 10 языков программирования"
> ДЕСЯТИ! Как вообще один человек на такое способен?
> Я за всю жизнь меньше языков выучил. А он - создал!
> Читая о таких людях, осознаю собственное интеллектуальное убожество:(Просто человек только этим и жил.
>Просто человек только этим и жил.Знал немало людей,чья жизнь вокруг компьютеров крутилась. Языков они не создали.
И сам был таким с 1989 по 2009 годы - компьютеры и как работа и как хобби. Сейчас уже только
хобби в силу возраста.
Однако ничего даже близко сравнимого с созданием новых языков программирования я не совершил.А моим любимым языком является ADA, которая из Паскаля немало позаимствовала и ему отчасти родственна синтаксисом.
Причина на самом деле проста - Вирт является (являлся, точнее) профессором по компьютерным наукам, то есть для него создание языков и вообще теоретическая работа в компьютерных науках это то зачем ему платят зарплату. А у вас и знакомых это можно было бы делать только в свободное от работы и личной жизни время.
> теоретическая работа в компьютерных науках это то зачем ему платят зарплатуfortran/ibm - ни одного профессора, одни практики
с/unix - снова ни одного профессора
C# - да что ж такое, опять профессоров забыли позватьА вы и знакомые просто родились не в той стране. Там только скрепы и носок на х-ю, да и тот запретили.
Ты как всегда обосрался: Dennis Ritchie для тебя недостаточно "профессор"?
очередной эксперт опеннета... Простите, в каком универе преподавал и "получал зарплату только чтоб ничего не делать" "профессор" Ритчи?Ритчи даже не защитил кандидатскую (в отличие от авторов фортрана) и по слухам просто ее... прое6..л. Ему некогда было теоретической фигней страдать - он работал на AT&T и хреначил код, до самой старости, а не рассуждал с умным видом.
Элементарно: они все одинаковые. Фактически все эти десять языков — это диалекты одного языка, причём весьма примитивного по современным меркам. Вирт "переизобретал" раз за разом один и тот же язык и с каждым разом он выглядел всё более и более отсталым, оторванным от реальности и ненужным.
> Вирт "переизобретал" раз за разом один и тот же языкне "переизобретал", а дорабатывал концепции настолько, что язык уже не был прежним.
> и с каждым разом он выглядел всё более и более отсталым, оторванным от реальности и ненужным.об этом не тебе судить.
> не "переизобретал", а дорабатывал концепции настолько, что язык уже не был прежним.C# 10 тоже "уже не прежний" C# 1, и всё же это считается за один язык.
Скорблю и соболезную. Он создал язык программирования, который был у меня первым в изучении и карьере.
Паскаль и OS (среда выполнения) Никлауса Вирта в 1980-тых намного опережали DOS. Никлаус Вирт, работая в универе и уча разработки языков программирования и OS, решил, что продавать надо не готовую OS, а книгу о том, как придумать свой язык программирования, написать его компилятор и OS. Если бы в продажу пошли не книги, а готовая OS с компилятором, то возможно эволюция ПО была другой.
Уже в 1980-х концепция «наша ни с чем не совместимая ОС + компилятор» была — для обычного ПК — мертворожденной идеей.
в начале 80х не было никакого "обычного ПК".
Если не считать ранних эплов, малопригодных для работы. Впрочем, на фоне остального зоопарка они не особо-то и были заметны.Вполне можно было спаять в очередном гараже уникальный аналоговнеимеющий паскалекомпьютер. И даже при некотором везении и смекалке пустить в продажу. К счастью, профессор вероятнее всего не умел держать в руках паяльник.
Был он назывался IBM PC
жаль что об этом никто в мире не знал.
Ну только в твоём воображаемом мире.
> Ну только в твоём воображаемом мире.нет, опоздавший родиться. Это только твой маня-мирок (поскольку сам ты обыскивал пеленку) в начале 80х строем перешел на единый стандарт. А реальность была весьма далека от победы 1вм.
Если бы Аннушка не разлила масло, то разлила бы Алёнушка. IT это место, где много всяких девок ходят туда-сюда с маслом в небезопасных тарах. Здесь играют роль, и важны прежде всего, не книги, а люди, способные долго и упорно доводить идеи до воплощения и популяризации
С популяризацией у профессора все было как раз хорошо.
Вон по сей день находятся пропагандисты паскакаля - успешно мозги им промыли.А практических реализаций он был в общем и не любитель особо.
А увидел бы дельфи - наверное б до 90 лет и не дожил бы.
То ли дело пропагандисты божественной сишечки! 50 лет переполнений буфера и утечек, язык застыл на уровне PDP-11, в хелловорлдах по 10 UB на 100 строк, а вам все нипочем.
Если бы у бабушки были...В том и дело что Профессор кислых щей мог только в книжки. А в программирование - не мог и вообще не собирался (первый чудо-компилятор он же загрузчик его собственного чудоязыка написали его аспиранты. Прохфессор посмотрел, поморщился, "ну что за гадость, я тут высоким полетом мысли занят, а они ... вот", но принял к сведению. А то бы и вообще никакого не было.)
Впрочем, на фоне безумных русских, написавших компилятор алгола и таки использовавших его десять лет...
Земля пухом.
Жаль(
Человек сделал много для популяризации программирования.
Именно с паскаля многие начинали в школе.
Если бы не было паскаля, то начал бы с чего-нибудь другого. Например, с BASIC-а или Си.
> Если бы не было паскаля, то начал бы с чего-нибудь другого. Например,
> с BASIC-а или Си.товарищмаёр - присмотритесь к этому националпредателю повнимательней. Чую, импирилистичским духом и низкопоклонством перед враждебными демократиями потянуло!
Начинал бы ты с языка прохвессора Ершова - "алг нач конц рез гав гав гав гав"
К счастью для нетронутых мозгов последующих поколений, этот-то профессор с неимеющейаналогов отечественной медициной прожил не 90 а всего 57 (в которые выглядел на 80) и сразу после его смерти все эти чудеса выкинули в мусорку.
Самый заметный след в истории, я считаю, Ершов оставил, учредив журнал "Микропроцессорные средства и системы". Я свои познания в информатике продолжил с него. Первыми были статьи по КР580 в журнале "Радио".
ну если именно про след в истории - как отпечаток лапы динозавра, на миллион лет - то да.
А при жизни его почитание требовало либо доступа в какие-то техбиблиотеки, либо блата, либо везения - во всяком случае, ранних номеров, которые при жизни профессора были. (когда еще не было никаких миров-пк и тому подобных полурекламных проектов)Так что мало кто успел приобщиться до момента когда стало уже малоактуально.
И запомнился профессор скорее неудачным подходом к обучению информатике.
клевещешь, я писал на альфа6 - дальнейшее развитие алгола66, прекрасный язык, есть даже комплексные числа. блоки выделял {} так же как в СИ
ну просто изначально язык придумывался для записи абстрактных алгоритмов (тогда еще думали что алгоритмы на бумажке представляют собой какую-то непреходящую ценность)а эти-русские то ли плохо прочитали, то ли перевод ниасилили, в общем приняли за чистую монету и принялись писать для него транслятор. И...написали и оно даже активно использовалось, хотя то ли в силу особенностей языка, то ли из-за недостатка памяти было чудовищно медленным (если с фортраном сравнивать, с его однопроходным транслятором, конечно... э, собственно больше особо и не с чем было).
альфа6 вроде как была просто шестой его версией (где были предыдущие четыре - никто правда не знает), внутри все тот же алгол.
Язык, придуманные А.П. Ершовым (РАПИРА) был для своего времени очень хорош. А то, что ключевые слова русские - это не недостаток.
Начинал с asm, о чем не разу не пожалел, потом С/С++, Паскаль обошел стороной, ничего не потерял, хотя как по мне прикольный язык для детишек.
> прикольный язык для детишек.Программисты (для) КГБ/ФСБ тихо ржут с тебя
Это он конечно зря.
Да, погорячился товарищ Вирт.Постарайтесь не повторять этой ошибки.
Хорошо пожил дядька. Тот же Брам рано помер. Наверное, паскаль и оберон полезны для здоровья.
Для психического — более чем.
Недавно интереса ради засел за fpc — и это было приятно, оно просто работает.
> Хорошо пожил дядька. Тот же Брам рано помер. Наверное, паскаль и оберон
> полезны для здоровья.да хоть ассемблер. Главное, главное - самому на нем ничего не программировать.
Что ж у тебя бомбит так от Паскаля, под каждым комментом отписался ))
Печаль. Спи спокойно...
Хороший человек, автор языка, который намного удобнее Си. К слову, многие знают лишь про компиляторы FreePascal & GNU Pascal, но фактически ещё есть оригинальные компиляторы p-5, p-6, открытые под BSD.
Ну почему же. Мы помним и Delphi, и Kylix, у которого под капотом всё тот же Паскаль
> но фактически ещё есть оригинальные компиляторы ...Вирт не писал компиляторы :DDDDD
Большая утрата. Увы, многие его помнят за дряной язычок Паскакаль, тогда как модула и оберон были чуть менее унылы. Лучше бы помнили за них.
Паскаль - мерзкий язык для бездушных карьеристов как сейчас ИТ. Принцип - лишь бы проще и больше лепить кода меньше думая, чтобы язык ограничивал и попку подтирал. В общем, учебный язык - учебный, противная гадость для тех кто любит программирование, а значит предоставляемые возможности, таким нянька в виде Паскаля не нужна.
Паскаль в обучении любят те, кто не занимается ни программированием, ни обучением. Потому что профессиональное чутье им заменило чувство ностальгии. "Паскаль хороший, потому что детство, лето, первый секс".
А вот и самое аффторитетное мнение от анонима.
Тебе в жизни довелось хоть кого-то учить?Можешь предложить, язык для обучения школьников?
И для студентов университета (первых курсов)?
Да, я занимался обучением. И программированием.Могу, racket, haskell. По обоим есть достаточно крутые учебные материалы. Если очень хочется попсы (правда неясно зачем) - python, go. Но если строго, то школьников надо обучать не ЯП, а началам CS.
Кадется мы с тобой уже пересекались в комментах, в теме про делфи.
И ты задвигал идеи обучать детей функцианальным ЯП, 'основам лямбда-исчисления и теории категорий' и прочим вещам, которым в школе не место.
(Если нет, то прими мои извинения)И опять приводишь в пример haskell.
Это же уродливый язык который, на котором написано полезного столько, что можно посчитать на пальцах одной руки (сужу по опенсорсу, ну в силах того на каком мы сайте).Более того в прошлой теме ты задвигал про обучению CS.
Так приведи примеры общих и/или ознакомительных курсов серьезных вузов где это убожество применяется? (То что будет отдельный курс по хаскелю - в это я охотно поверю).
Пока ситуация выглядит не в пользу функцианальщиныУ mit.edu в секции General Introductions to Programming используется Python во всех трех курсах.
В стендфорде начальных курсов не нашел, но в более продвинутых
cs143 Compiler - с++,
CS 168: The Modern Algorithmic Toolbox - matlab и python,
CS255: Introduction to Cryptography - python,
CS106B - Programming Abstractions - с++ и т.д
В CS107 - Programming Paradigms лисп упоминается, но к студентам требование знания именно с++.
> Если очень хочется попсы (правда неясно зачем) - python, go.Неясно зачем? Например, затем, чтобы школьник познакомился с дружественными языками общего назначения, на которых он смог бы решать практические повседневные задачи, типа той же обработки текста и работы с ML.
Вместо этого ты предлагаешь школьникам заниматься академической мастурбацией. Занимался обучением, говоришь? Ну-ну...
> Если очень хочется попсы
Вот, собственно, и вся причина упоминания функциональщины: тебе нравиться считать себя "не таким, как все". "Попса" - это для плебса, а у нас тут функционал-элита подъехала. То, что это нишевая технология, тебя не волнует.
Сейчас отлично подходит питон и аналоги. Да сейчас вообще нет недостатка в языках любого вида. И учить нужно на практичных языках, которые могут пригодиться в будущем. А не на хламе, который якобы предназначен только для учёбы. Если бы речь шла о дошкольном образовании, то мб действительно нужно было бы искать язык попроще вроде питона или basic-а
Питон в качестве первого ЯП плох. И любой ЯП с динамическими типами.
> Можешь предложить, язык для обучения школьников?
> И для студентов университета (первых курсов)?Julia, кстати, вполне на эту роль годится. Простая до безумия. Достаточно чистая и строгая по синтаксису. Не имеет ООП. Код может быть использован в будущем. Для любых школьных задач может быть легко использована.
// не как в питоне, где, как бы, преподаватель показывает на нём умные алгоритмы, но никто никогда их использовать не будет в силу непригодности языка для этого
Си отлично подходит.
Для своего времени, а это на минуточку 1970-e годы Паскаль был весьма неплох, впрочем также как и Си, но как говорится времена изменились, - как никак уже больше 50 лет прошло!!!
Ухаха! Детка, в 70-е кроме Си и Фортрана, уже как 12 лет был Lisp! Были ML и Hope. Паскаль даже в 70е не был "весьма неплох". Почитай отзывы о нем от тех, кто занимался CS тогда.
Lisp и системное программирование? - Вы серьезно:)Повторюсь, времена были другие, цели и задачи были другие, уровень науки и техники в конце концов был другой, именно поэтому никому в реальном мире не были нужны всякие микроядра и Lisp машины!
Лисп машины были коммерчески успешны. И вполне использовались в "реальном мире". Умерли они по другим причинам. Лисп в живы до сих пор. Микроядра используются до сих пор. А Паскаль - нет.Причем тут системное программирование я не понял.
>>> Причем тут системное программирование я не понял. <<<Тогда дальше нет смысла, что-то объяснять!
Конечно же нет смысла, ведь ты даже контекст не в силах удержать. Тейк был о том, что Паскаль был неплох в 70-е. Это не так, потому что тогда были языки на голову превосходящие Паскаль. Примеры я привел. Диалекты Лиспа коммерчески успешны до сих пор. Вклад лиспа и ML есть во всех успешных языках современности. Паскаль же используется 1.5 хобби-кодерами и его вклад есть только в модуле и обероне =)Вирт просто очень верил в структурное программирование и эта вера не оправдалась. Вот и всё. Если вы уважаете Вирта - почитайте что-то по истории программирования и его собственные лекции, например.
cказал человек, который не в состоянии понять контекст:)
Разумеется, системное программирование имелось в контексте Си, иначе зачем я его вообще упоминал!!! Мда ...>>> ты даже контекст не в силах удержать. <<<
сказал человек, который, как оказзалось, в принципе не в состоянии понять контекст!
Искажаешь действительность. Популярные ЯП в 1970-х это Cи, Cobol, Fortran ... и паскаль с лиспом тоже где-то в этом списке. Lisp превосходит что-либо только в твоём понимании, но не по фактическим данным. Сейчас lisp-ы также используют полторы калеки если пересчитывать на мир.Паскаль не взлетел не из-за ставки на структурное программирование, а просто потому что язык не практичен. Сами же идеи структурного программирования не являются какой-то глубокой идеологической парадигмой и прекрасно используются во всей современной разработке вместе с другими подходами. Стуктурщины в современном мире много больше, чем функциональщины.
>и его вклад есть только в модуле и обероне =)Вранье, повлиял как минимум на жаву, го, сишарп.
> Паскаль же используется 1.5 хобби-кодерами и его вклад есть только в модуле и обероне =)Господи, что ты несешь? На Delphi - прямом развитии Паскаля - написано куча коммерческого софта: начиная с десктопного софта для конечных пользователей, и заканчивая тьмой промышленных систем.
Ты правильно написал "были коммерчески успешны" и "вполне использовались".
А умерли они по причинам - стали никому нафиг не нужны.> Лисп в живы до сих пор. Микроядра используются до сих пор.
Где? Примеры?
То что сейчас какой-то пенсионный фонд крутится на Коболе, не говорит что он жив.
Это легаси, и оно живо, только потому, что переехать на что-то новое слишком дорого.
Julia как рубиподобная реализация Лиспа - более чем успешна.
Сам осилишь оценить сколько кода написали на Julia или нужно помочь?
> Лисп в живы до сих пор. [...] А Паскаль - нет.О Delphi и куче софта, на ней написанного, мы не слышали, да?
Миллиарды скобочек и дофига диалектов. Лисп даже то время имел очень узкую нишу.
Hope - очередная функианальная отрыжка, для обучения школьников не приспособленный от слова совсем. Как и МЛ.
> Паскаль - мерзкий язык для бездушных карьеристов как сейчас ИТ.Как-будто карьера это плохо)
Ну не все умеют трепаться языком и гранты клянчить, как акса-калы опенсорса, им работать приходиться.> Принцип - лишь бы проще и больше лепить кода меньше думая,
Принцип KISS тебе что-то говорит?
> чтобы язык ограничивал и попку подтирал.
Какой ужас, нужно чтобы ЯП тебе еще и в штанишки гадил?
Отличная идея, как отвадить детей от занятий программированием, просто генитальная!> В общем, учебный язык - учебный, противная гадость для тех кто любит программирование, а значит предоставляемые возможности, таким нянька в виде Паскаля не нужна.
Для того чтобы "любить программирование" нужно в нем сначала разобраться и научиться.
А для обучения нужен нянь или учитель (в зависимости от возраста.)
Паскаль не способен обучить программированию, поскольку средства этого самого программирования отсутствуют в паскале. Всё очень просто) Ну если конечно за программирование не считать дрочку циклов и сортировку пузырьком.
Ну так просвети, что такое "программирование" ?
Помнить назубок все UB, очевидно. И наноменеджмент каждого байта памяти. Вот что отличает "настоящих программистов".
> Помнить назубок все UB, очевидно. И наноменеджмент каждого байта памяти. Вот что
> отличает "настоящих программистов".Вот только что-то нифига не получается, как бы не пыхтели и щеки не надували.
Сколько новостей про CVEшки из-за пямяти только за последний год было?
От то-то и оно))
> Помнить назубок все UB, очевидно. И наноменеджмент каждого байта памяти. Вот что
> отличает "настоящих программистов".ну вы, думаю, будете помнить всю жизнь, что пальцы в розетку лучше не ..... или вы не "настоящий ребенок"?
Да, я ненастоящий программист. Мне одного раза в возрасте 3 лет хватило чтобы пальцы успокоить. Но есть люди, которые и в 50 лет крепко держатся за любимую дыряшку. И чем больше глюков в их "программах", тем лучше. Ведь так они нужнее – затыкать дыры пальцами.
> Ведь так они нужнее – затыкать дыры пальцами.Хокинг, задался бы вопросом - чем бы заткнуть "черные дыры" :)
Программирование это в первую очередь именно умение правильно думать о проблеме и навык разработки алгоритмов и структур данных. И для этого подходит хоть basic из 70-80. Средства программирования уже инженерные и прикладные инструменты, их можно выучить относительно быстро, учитель здесь не особо помогает.
И действительно — что за язык, в котором границы массива действительно что-то значат! Мучают себя, как при царском режиме.
Для каких карьеристов, что ты несёшь? Паскаль никогда не был мейнстримовым ЯП
Карьерист это человек которому плевать на свою работу, на то что он делает, его интересуют карьера и деньги. Паскаль именно для таких, кому плевать на программирование, им всё равно что делать, на чем и как программировать, главное проще, меньше заморочек, т.е. главное меньше работать, потому что работа для них это лишь назойливая обязанность которой лучше бы не было. Именно таким нужны языки как проще, автоматически защищающие от ошибок, потому что они и работают как попало спустя рукава, не стараются. Но проблема в том, что такая защита не бесплатна. Чем больше защит и ограничений, тем хуже с этим работать. Инструмент должен помогать делать как можно больше как можно удобнее, а защиты от дурака делают наоборот, они ограничивают возможности, делают выполнение "неугодных функций" неудобным вставляя палки в колеса программисту, т.е. действуют против него, а не для него. Такая тактика работает при обучении в институтах глупых необразованных масс студентов, которых нужно пасти как баранов плетью направляя в "правильном направлении", но как инструмент работы это совершенно не годится, ибо инструмент должен делать наоборот, давать свободу, богатство выбора и максимальное удобство. Так делает си, это рабочий язык, а паскаль это учебный язык, для работы не годится, точнее годится для тупой "работы" тех кому плевать на свою работу. Плохой, порочный язык, уместный только в учебных институтах, либо в среде порочного программирования среди карьеристов.
> Паскаль именно для таких, кому плевать на программирование, им всё равно что делать, на чем и как программировать, главное проще, меньше заморочек, т.е. главное меньше работать, потому что работа для них это лишь назойливая обязанность которой лучше бы не было.Т.е ты за усложнение, главное работать больше?
Ты случайно не из "здесь мерилом работы считают усталость"?
Может ты еще и бесплатно работаешь на благо общества))?> Именно таким нужны языки как проще, автоматически защищающие от ошибок, потому что они и работают как попало спустя рукава, не стараются.
Правильно, результат не главное!
Главное очень стараться, даже если результат будет дырявым овном с кучей уязвимостей.> Чем больше защит и ограничений, тем хуже с этим работать.
Всякие техники безопасности, ПДД и ПУЭ с тобой очень не согласны.
Как только кто-то начинает лепить без "защит и ограничений" то начинаются проблемы, иногда с жертвами. А жалуются только бракоделы и неосиляторы.> Инструмент должен помогать делать как можно больше как можно удобнее, а защиты от дурака делают наоборот, они ограничивают возможности
ИЧСХ в твоей фразе нет ни одного упоминания качества)
Инструмент должен позволять делать больше и удобнее, но не в ущерб качеству.
А то получится как в анекдоте:
Машинистка заявляет, что она печатает 1000 знаков в минуту.
- Неужели?!
-- В самом деле так, но какая-то фигня получается...> но как инструмент работы это совершенно не годится, ибо инструмент должен делать наоборот, давать свободу, богатство выбора и максимальное удобство. Так делает си, это рабочий язык
И опять ничего про качество)
Давать в руки такой инструмент можно только тем, кто себе не отстрелит ногу (ведь практически в любом огнестреле есть предохранитель).
А если не может (что мы видим по богатству CVE) - то не давать.
Си это уродливая дыряшка на котором одни и те же ошибки делают уже лет 30-40. Сам он конечно не виноват, как и например болгарка без кожуха с треснутым диском.
Но если программеры не осилили его за столлько времени - то от такого инструмента просто отказываются.> в среде порочного программирования среди карьеристов
Т.е тех, кто хочет выполнять работу "быстро, не-напряжно и качественно"? Ну и получать за это деньги.
Отличные люди, я тоже хочу таким быть.
Чел, ну а чего ты ожидал? Среднестатистический местный любитель сишочки - это выгребатель embedded конюшен за копейки на аутсорс. Ни о каком качестве или безопасности они не слышали.А достижения у них, как видишь, уровня "не вылез за пределы буфера", "не уронил память", "не сделал use-after-free". Возьми любой современный язык, на котром эти проблемы выпилены на корню - и что от нашего сишника останется?
PS: Причем в 2022 аутсорс-кормушка закрылась. Те, у кого было хоть немного мозга - выучили более современные технологии, а остальные embedded-обезьянки так остались безработными и теперь топят за сишочку и воюют на Опеннете против других языков.
> его интересуют карьера и деньгиШизоид, это и есть работа. А на паскале много наработать нелья, хотя бы потому что для него практически нет либ.
Согласен, Python для обучения лучше. Похороним гвидо - скажем спасибо
Python - это современный Cobol. Везде запихивают, и, аналогично случаю Кобола, людей, которые на нём обучают и ломают психику молодёжи, надо сажать пожизненно.
> людей, которые на нём обучают и ломают психику молодёжи, надо сажать пожизненно.Какому языку уважаемый эксперт предлагает обучать молодежь вместо Python?
Ассемблеру, в качестве базового средства понисмания что такое компьютер и как он работает. Без такой базы получается искаженное сознание, потерянный человек навечно идиот. А в качестве уже языка для написанипя программ давать Си. Всё, этого достаточно, с остальными языками уже сами разберутся, нет необходимости чем-то специально пичкать, это уже не имеет значения.
Чел, ты серьезно предлагаешь школьникам - 16-летним парням и девушкам - втюхивать ассемблер с С? Зачем?
> Ассемблеру, в качестве базового средства понисмания что такое компьютер и как он
> работает. Без такой базы получается искаженное сознание, потерянный человек навечно идиот.А без понимание того, сколько впрысков топлива делает ДВС и на сколько мм подымается клапан, на каждом такте не давать права на машину. /_-
Откуда вы такие умнике беретесь, с подобными генитальными идеями?
> А в качестве уже языка для написанипя программ давать Си. Всё,
> этого достаточно, с остальными языками уже сами разберутся, нет необходимости чем-то
> специально пичкать, это уже не имеет значения.Правильно! Давай научим новичков овнокодить, применять каки вида uint32_t x = (*(struct foo *)NULL)->x, выходить за границы массивов и делать double free.
А тех, кто будет особо способный - научим use after free.Но главное!
Мы научим их считать себя Ылиткой, смотреть свысока на другие языки,
игнорировать типичные ошибки разработки и придумывать 1000 и одну отмазку, чтобы объяснить "почему бракоделы дыряшки наложили себе в штаны в этот раз"
> А без понимание того, сколько впрысков топлива делает ДВС и на сколько
> мм подымается клапан, на каждом такте не давать права на машину.права в 16 лет все равно не дадут. И великими программистами они тоже станут сильно попозжей. А вот понимать хотя бы в принципе как работает движок и трансмиссия - без мелких подробностей - внезапно, может потом и пригодиться.
>> А в качестве уже языка для написанипя программ давать Си. Всё,
А зачем им системный язык для учебных программ? 2+2 считать можно и на бейсике, а большего в школе и не требуется - им бы с остальными предметами как-то до Егеге протянуть.
> Правильно! Давай научим новичков овнокодить, применять каки вида uint32_t x = (*(struct
> foo *)NULL)->x,давай ты научишь их писать программы, работающие с сырыми данными (где и придется заниматься подобными преобразованиями), на паскакале? А мы посмеемся.
А вот помигать светодиодиком на ардуинке они вполне смогут без единого явного использования указателя (и нет, с паскакалем там все плохо, да и с ассемблером некуда особо). Но, боюсь, это опять не для школьной программы, разьве что для факультатива.
> Мы научим их считать себя Ылиткой, смотреть свысока на другие языки,
судя по тебе, любители модных язычков гораздо более вероятно обучат этому ненужно-навыку. А программировать не научат, потому что вы и не умеете.
>Какому языку уважаемый эксперт предлагает обучать молодежь вместо Python?Языку с максимально строгой и развитой типизацией. И конечно строгим компилятором.
ADA и Java как примеры. Особенно первый.
Очень хорошо приучает к аккуратности - за типично сишные вредные привычки вольного обращения
с типами данных сразу бьет по рукам.
Надо учиться писать код хорошо. Плохо само получится.
Программист,привыкший к аккуратности - потом и на Питоне аккуратно напишет,а не как обычно бывает.
> Надо учиться писать код хорошо.
> Программист,привыкший к аккуратностиЧел, речь идет об обучении молодежи, т.е. буквально школьников. Ноакой им "учиться писать код" и становиться "программистом, привыкшем к аккуратности"?
Школьников нужно познакомить с азами, причем так, чтобы ребята не проблевались и получили хоть какую-то проктическую пользу в происходящем. А после этого каждый сам для себя решит, нужно ли пму это, и в какую сторону развиваться.
Ещё один сектант правильного расставления скобочек, декларирования всех переменных вначале ф-ии и прочей дичи. Смещаешь акцент обучения со сложной задачи, заключающейся в выработке прикладного анатилитеского мышления и творчества, к простой и понятной тебе - к формальностям.
>Ещё один сектант правильного расставления скобочек, декларирования всех переменных вначале ф-ии и >прочей дичи. Смещаешь акцент обучения со сложной задачи, заключающейся в выработке прикладного >анатилитеского мышления и творчества,При изучении языка в школе (обычного,человеческого) тоже сначала учатся правильно расставлять всякие там точки с запятыми, и только потом приступают к творческому изложению своих мыслей в многостраничных сочинениях.
Мне кажется что и с языком программирования такой подход вполне работать будет. Начинать учиться
надо с максимально строгих языков и компиляторов. Чтобы однажды привыкнув к компьютерной грамотности потом не делать глупых ошибок.>декларирования всех переменных вначале ф-ии
В этом разве есть хоть что-то плохое?
Опять аналогия с литературным творчеством - прежде чем писать сколько-нибудь крупные и сложные тексты обычно составляется некоторый план, определяющий основные мысли и порядок их изложения.
Если этого не сделать то у большинства получится некий невнятный "поток сознания" что в литературном тексте что в программном.
>Какому языку уважаемый эксперт предлагает обучать молодежь вместо PythonВнезапно, Scala.
эт питон жы
Этот человек многое сделал для человечества.
В комментариях к новости очень много неполноценных людей. Яркая иллюстрация деградации общества. Многие выродились до такой степени, что каждое явление оценивают с точки зрения личной выгоды и личных предпочтений. Осознание того, что что-то может быть полезно другим для них не доступно. И даже в новости о смерти человека обязательно нужно вымарать его лично и его дела грязью.
Глубочайший респект и светлая память.
Мощный дядька, тогда многое очевидное сейчас было как открытие новой планеты а люди причастные воспринимались как полубоги. Но как только я добрался до компилятора С и получил возможность писать большими и маленькими буквами то на Паскаль просто смотреть не мог. После С эти строки капсом какое то прямо животное оттрожение вызывали брр.
Сначала похвалил,а потом грязью вымарал. Наш человек!
Какие еще строки капсом? Вот прямо серьезно, из достоинств языка прямо сразу выделилась чувствительность к регистру?
Очевидно вы не в курсе некоторых нюансов (~1988 год). Тогда это было физически невозможно писать не заглавными буквами, на одну ДВК-2 (наш советский PDP-11) было 5 человек, дорвавшийся счастливчик судорожно "вбивал" программу с бумажного тетрадного листа (особо приближенные уже вводили с настоящей распечатки с исправлением шариковой ручкой), компилировал и запускал, буквально следующий страждуший уже выталкивал с стула предыдушего программиста видя что программа почти завершилась и ожил принтер "дрюкарка знакова мозайкова" и поползли строки вывода программы. На паскале из за особенностей стандарта и компилятора все было большими буквами, он просто отвергал символы не по стандарту. Как только на кафедре появился С у которого в самом стандарте было строгое требование к символам то все получили экзистециональный шок настолько текст без капса на распечатке и дисплее изящен и читается и понимается лучше.
Очень интересное мнение.
До какого именно компилятора с Вы добрались? Просто для каждого компилятора С нужно было код очень конкретно переписывать, а значит смотреть на старый уже не обязательно.
Большими и маленькими буквами - это проблема 7 битных кодировок?
> Большими и маленькими буквами - это проблема 7 битных кодировок?В семибитную ascii вполне помещались оба case. И даже фигурная скобочка. Вот в КОИ7 - места для них не нашлось.
Товарищ просто чуток задержался с рождением и не видел "ИПК Минавтопрома". ДА, там был Си ВОТ ТАКИМИ БУКОВАМИ.
А вместо фигурных скобочек - \( \) (охренительно удобно было набирать - тут и BEGIN/END обрадуешься)Не помню уже, что вместо квадратных, тоже жуть какая-то. А принтер вместо этого печатал ( < одну поверх другой без сдвига каретки. Чтоб окончательно всех запутать.
Кстати, возможно именно этим вызван странный выбор скобок прохвессором. Т.е. он вероятно начинал с компьютеров где другие либо вовсе отсутствовали либо не на всяком терминале набирались и не на всяком принтере печатались.
Но убить его хотелось за := конечно.
Не знаю как := - для людей с мат образованием выглядит понятно, но == для сравнения - это шик!
=== превосходное сравнение еще и типов :)))
Я ждал, я ждал...
да как-то всем и так было понятно что = не совсем то же самое что математическое равенство.А вот долбить по клавиатуре набирая код на язычке, в котором самый частый символ - двойной да еще требующий shift - во времена без всяких соплелетов и прочих помогаек - ничуть не вызывало добрых чувств к изобретателю.
Только факты.
1. Никлаус Вирт не создавал Паскаль для обучения программированию. Он создал реально работающий компилятор для инженеров. Просто так, по стечению обстоятельств, сложилось, что Паскаль стали воспринимать, как язык для "обучения программированию".
2. Паскаль должен был быть упрощённым вариантом Алгола. В 1970-х гг. Алгол становился всё сложнее сложнее.
3. Современная, дожившая до нас версия Паскаля от Н. Вирта - это Оберон.
4. Никлаус Вирт не любил С++, и американский синтаксис.
5. Н. Вирт типичный представитель европейской школы программирования.
Но инженеры паскаль не выбрали, безответная любовь
Поэтому каждая третья новость на сайте про очередные уязвимости.
Как будто никто не понимает кто ими спамит.
Зато российские пре-1С офисные кодеры выбрали. Некоторых до сих пор не отпускает.Правда, заслуга Вирта в этом небольшая, надо думать.
> Зато российские пре-1С офисные кодеры выбрали. Некоторых до сих пор не отпускает.
> Правда, заслуга Вирта в этом небольшая, надо думать.ну как тебе сказать... заслуга Вирта просматривается - кто-то ведь убедил в свое время Хейлсберга выбрать именно этот язык.
Конечно, если бы профессор увидевши во что тот его превратил, пытаясь сделать из абстрактной игрушки язык системного программирования, его хватил бы инфаркт, но, полагаю, грязными приземленными деталями реализации профессор не интересовался.
P.S. надеюсь тут не надо объяснять кто такой Хейлсберг, какого отношения он НЕ имеет к Borland inc, и какой язык выбрал в зрелом возрасте?
Хотя зря конечно и вряд ли рассказыватели сказок о пре-1с эра знают.
Вы, видимо, инженера в глаза не видели. Посмотрите оборудование Сименса и на чем под него пишут.
и язык Ada:) наследие Паскаля
Немного похож, но не наследие
> американский синтаксисЧто это?
Десятичная точка, вместо десятичной запятой.
Видимо имеется в виду способ программирования парсеров для языков программирования. "Американский" способ — это LR(1) парсеры, а "европейский" — LL(1).
>Н. Вирт типичный представитель европейской школы программирования.А чего ж в Паскале ключевые слова английские, а не немецкие или французские?
Потому что "представитель европейской школы программирования" ≠ "идиот".
Респект дедушке Вирту.
Наверное так или иначе его идеи прямо или косвенно повлияли на всех программистов, даже если они никогда не использовали созданные им языки.Долгое время я сам почти не задумываясь ответил бы, что лучше начинать с паскаля. Может потому что я сам с него начинал. А может просто влияла мантра "языка созданного для обучения". Прошло время я уже совсем на других языках писал. Тут я уже немного подумав сказал бы, наверное Python - вполне попсовый ответ даже сейчас. Прошло еще немало времени. И вот сейчас я уже не знаю с какого языка начинать.
Возможно для разных людей ответ будет разный. Всё зависит от характера и того что именно цепляет человека в программировании. Любит ли он упорядоченность или свободу вариантов, нравится ли ему сам процесс поиска решения или хочется по быстрее результат. Язык для обучения должны помочь выработать нужные, а именно отсутствующие навыки. В каком-то смысле самый лучший язык это тот, который приносит больше всего мучений при изучении и удовольствие и постижении.
Когда-то казалось, то любая программа это обязательно "структура сверху до низу", поэтому навык структурного программирования был важен, но в то же время ресурсы были очень ограничены, и важно было быть "ближе к железу". Для этих навыков походил паскаль. Сейчас уже понятно, что эти навыки не ключевые, но где-то и кому именно они и необходимы.
Сейчас я наверное порекомендовал бы учить разу несколько языков, обращая внимание на их отличия и разные возможности при решении одних и тех же задач. В таком виде паскаль достаточно "показателен" в своей структурированности. Также решать практические задания иногда выбирая язык, а иногда будучи ограниченным языком или отдельным его функционалом. Так можно заложить хороший фундамент, но также оставить возможность для развития не ограниченную текущим восприятием правильности.
> Когда-то казалось, то любая программа это обязательно "структура сверху до низу", поэтому навык структурного программирования был важен, но в то же время ресурсы были очень ограничены, и важно было быть "ближе к железу". Для этих навыков походил паскаль. Сейчас уже понятно, что эти навыки не ключевые, но где-то и кому именно они и необходимы.Если я увижу PR, где код размазан по нескольким файлам без какой-то закономерности, если связанные функции раскиданы по самому файлу просто потому что так курсор попал на свободную строку..
То я его просто реджектну и заставлю переделывать (а речь про комерчискую разработку, так что забить не получится)Конечно от некоторых требований можно отказаться, но даже сейчас в языках которые нетребуют, иногда пишу "условный блок создания переменных" в начале функции.
Очень удобно смотреть где создаются первонаальные значения.
>а также одним из создателей парадигмы структурного программированияДа-да, для написания любой програмы достаточно 3 управляющих конструкций: последовательность, ветвление и цикл.
Сейчас даже старым пердунам трудно понять, что творилось в 1960-70-х гг. Читал у Дейкстры, что исходники программ невозможно было читать. Везде, и там где надо, и там где этого не требуется, использовали оператор GOTO. Дейкстра и Вирт в своё время нажрались всего этого дерьма, и теперь лично мне понятен, их хейт к неструктурированным программам.
>использовали оператор GOTO. Дейкстра и Вирт в своё время нажрались всего этого дерьма, и теперь лично мне понятен, их хейт к неструктурированным программам.ну так не было идеи о "структурном программировании", все первые ЯП "высокого" уровня проектировались с оглядкой на то, как это работало на том же асм. Никто же до сих пор не пытался придумать асм с избаленным из него всякой той "нечисти", которую так не любили "Дейкстра и Вирт в своё время".
пс: Светлая память.
> ну так не было идеи о "структурном программировании", все первые ЯП "высокого"дело не только в идеях. Очень дорого (в смысле персональных трудозатрат) обходились мелкие правки в коде. Я тут не зря периодически вспоминаю анекдот про рассыпанную колоду в десяток тысяч карт.
Поэтому когда выяснялось что в строке 1424 допущена ашипка - не исправляемая в пределах одной перебитой карты (условие к примеру забыли проверить) - в нее перебивали goto, чтоб не перебивать ВСЮ колоду (скорее всего опять наделав ошибок которые опять придется исправлять).
И где-то там в хвосте колоды или в (умными людьми) предусмотренном свободном месте потом исправляли, с goto обратно. (LABEL: можно было допечатать в уже готовую карту, для того он и вынесен в отдельное поле)Более того - так же велась групповая разработка (а как еще если я свой кусок дописал и хочу прогнать, а у тебя еще конь не валялся - на тебе 1500 C карт и иппись там внутри как хочешь)
В приличном обществе полагалось такое отдельно помечать в сопроводиловке, но кто ж ее заполнять-то будет. И читать некогда-некогда, надо срочно починить еще одно место.
И даже когда появились экранные редакторы - стиль оставался прежним еще очень долго, старый-то код никуда не девался.
> уровня проектировались с оглядкой на то, как это работало на том
> же асм. Никто же до сих пор не пытался придумать асмasm - всего лишь мнемоники процессора. Разумеется никому не нужен asm не отражающий реальную архитектуру конкретной машины.
Не надо читать у Дейкстры про GOTO. У него какая-то прям нездоровая фиксация на нём.
Оказывается, Никлаус Вирт ещё в 1995м пошутил: программы становятся медленнее куда шустрее, чем компьютеры становятся быстрее.
Хорошая шутка :))
На сегодня даже го__вё_ннейшие пестоны работают с приемлемой (для прикладухи) скоростью. Джаба вообще можно сказать летает. Так что гигагерц на сегодня достаточно, недостаточно КВАЛИФИКАЦИИ программистов - набегут клоуны со своими "паттернами", а думать над задачей не умеют.
*визг про преждевременную оптимизацию*
так приемлемо что Жабой на Андроиде пользоваться все тяжелее из-за тормозов. этими процами когда-то возможно было управлять сетью спутников. программисты совсем отупели.
Java тут чем виновата?
Отвечу за анонима выше. Java и прочие уже много лет виновата тем, что убирает управление памятью и тем самым позволяет лепить говнокод. Зачем думать про это думать, когда можно просто нафигачить любых контейнеров по ходу написания программы? Если память вдруг закончится - пусть пользователь просто докупит ещё.И вот мы имеем смартфоны, в которых оперативки уже больше чем в средних настольных ПК.
Ну что в этом плохого то. Это все равно что сетовать что для машины нужно покупать бензин, когда для лошади хватало просто сена.
Нет, это как сетовать что когда в машине кончается бензин, надо бежать покупать новую машину.
Да купи уже дополнительный бак.
Шутка оказалась правдой.
Вечная память и почитание.
begin;
writeln('Goodbye, World!');
end.
> begin;
> writeln('Goodbye, World!');
> end.А что за диалект такой где в begin ставится ";"?
Ставить не нужно, но такая программа должна скомпилироваться нормально. Лишняя точка с запятой просто станет пустым оператором.
Но не скомпилируется, т.к. забыли заголовок:
program RIP;* Говорят что Вирт нарочно вывернул наизнанку порядок аргументов на стеке вызываемой функции и т.п. Чтобы студенты не филонили (которых он учил компиляторы писать).
Но есть нюанс. Он ещё и вычислительную архитектуру под это спроектировал. С FIFO-стеком.
Поцкал конечно отвратительный язык и я жалею что с него начинал, но основная беда его что под win32 оно было несовместимо с библиотеками и фреймворками конца 90-х, нет бы про совместимость чуть подумать
А какая там могла быть совместимость, когда всё менялось скачками? До win был TurboVision под ограниченное текстовое разрешение экрана и отсутствием понимания, что что-то можно будет куда-то растягивать. И куда с ним дальше? Дальше быстрый переход через ObjectPascal на Delphi. А вот идеи Delphi уже долго держатся. Lazarus - их же развитие.
Никаких скачков не было. Была банда дuбuлов, которые каждый изобретал свои стандарты. Нужно было сразу кэнселить cdecl/pascal и сделать универсальное соглашение об импорте-экспорте функций и их вызове. Но т.к. Си доминировал, получили сишный вариант с дурацкими подчёркиваниями и даже он не стал единым - всё равно под юниксами была своя система библиотек.
+1. Венду даже переписывали из-за этих дурацких несовместимостей cdecl и pascal.
это проблемы стекового механизма 286 с его enter/leave (и невезучей mircosoft которая на это повелась а через пару лет внезапно оказалось что эти команды абсолютно неэффективны и ими нельзя пользоваться)
END.
Самая большая ошибка Вирта - это "begin ... end". Вот чесслово, можете снисходительно над этим улыбаться, но если бы Вирт подумал башкой и заменил их хотя бы на [ и ] , поверьте, история могла повернуться совсем другой стороной!
Есть много языков, где есть end, например lua.
Именно поэтому луа зашквар. Ну и сдохла абсолютно, но, я полагаю, это из-за низкого качества в большей мере.
Полностью согласен. И в Verilog не было технической проблемы отличать контекст фигурных скобок, но вместо этого туда засунули begin/end
begin..end просто соответствует реальному устному языку во всех ответственных областях. Действие начал, действие закончил. Именно с проговариванием факта окончания и возможностью его фиксации. А не как в "одном модном ЯП" "вы что, идиоты, я же на два шага отступил, чего вы не заметили, что я окончил?..." И именно эта естественность делает begin..end той конструкцией, которая ещё долго будет присутствовать в языках программирования.
Зачем тогда Паскаль если уже есть Кобол где всё человекочитаемо?
Хорошо, "соответствует реальному устному языку". Тогда почему array[7], а не "item in array at position 7"? :)))) Поверьте, в мире КОМПЬЮТЕРОВ натуральным языкам делать нечего. Комп - не человек, у него своя система мышления.
Ну так пиши в машинных кодах там у себя.
Это зависит от языка. На которых много нужно кодить и регулярно, многословность вредна. А DSL-и, к которым подходишь раз в год и пишешь немного, не помешает. Пример хорошего DSL это SQL, а паскаль пример плохого ЯП общего назначения.
> Самая большая ошибка Вирта - это "begin ... end". Вот чесслово, можете
> снисходительно над этим улыбаться, но если бы Вирт подумал башкой иЯ уже где-то там выше писал - скорее всего он подумал, и правильно на тот момент - что на терминале может просто не быть скобок кроме круглых.
> заменил их хотя бы на [ и ] , поверьте, история
> могла повернуться совсем другой стороной!угу, пока все ждали бы терминал с [] - в мире все же победил бы АЛГОЛ
Это простительно для vi, но непростительно для ЯП. Если есть ASCII, значит у тебя есть ВСЕ нужные символы. То, что их нельзя набрать на отдельном УБОГОМ терминале - не повод корёжить язык. При том, что паскакаль смело задействовал [] для массивов, а {} для комментариев.
> Это простительно для vi, но непростительно для ЯП. Если есть ASCII, значитА кто сказал что даже на том чудо-компьютере имени аспирантов Вирта был - ASCII, а не какая-нибудь урезанная до семи бит версия EBCDIC и псевдографика вместо старших 128? Эта кодировка вовсе не была сколько-нибудь распространенной и массовой.
> у тебя есть ВСЕ нужные символы. То, что их нельзя набрать
> на отдельном УБОГОМ терминале - не повод корёжить язык. При том,Я бы с тебя поржал в каком-нибудь 78м году в твоих попытках повыступать что терминал убогий, и ты за ним работать не станешь.
Квадратные и фигурные скобки есть только в американской версии ASCII.
"begin .. end" - тяжелое наследие algol-60
Собственно, сам Паскаль разрабатывался как язык учить недорослей программированию. В конце 60-х.
Имел честь послушать старика вживую в УрГУ
И что интересного узнал?
это было ~20 лет назад))) Чёт говорил в целом за индУстрию, про Оберон вроде, что-то про ранние потуги Зирокс (переводчик не знал что это Xerox, так и "перевёл").
Паскаль как язык никогда не нравился но для обучения основам более чем, хотя сейчас есть питон. Как первый раз почитал книжку Кенигана и Ричи про Си после первой лабораторной по языкам программирования 30 лет назад понял что вот это то что нужно для программиста.
Питон не машинный язык без всякой дисциплины и это развращает программистов
> развращает программистовИменно! Это мы видим на примере раста.
И вот кстати, для начального обучения питон не годится совсем, питон вроде древнего бейсика. Любой современный язык со статической типизацией сгодится, даже паскаль. Ну даже TypeScript..
Конечно можно только посоветовать питон тому кто вам лично не нравится в качестве "доброго" совета, глядишь человек так и не войдет в профессию :)
Питон - идеальный язык для обучения программированию. С пол пинка можно написать полезную программу с кнопочками, где понятна каждая строка. Это первая доза.
Мир его праху, мне Modula-2 ещё в советские времена нравилась.
В состав GCC включена поддержка языка программирования Modula-2
https://www.opennet.ru/opennews/art.shtml?num=58357Можно сказать, отдали дань уважения патриарху напоследок.
еще лет через 50 глядишь будет oberon. Как раз когда уже совсем никому не будет надо.
Жаль, конечно, этого добряка.Уходят лучшие.
RIPСтранно, что это мини-новость, а какая-то ерунда на расте - главная.
Ушел Великий. Вечная память.... ((
Спасибо дедушке Наклусу за знания, которыми он поделился со всеми. За Паскаль тоже спасибо.
Земля пусть будет пухом. Несомненно в рай, там надо списки программировать.
Вечная память!
Какая "вечная"? Оперативная же! :)
> 1 январяВот это понимаю точность. Это вам не за границы массива выйти и память испортить.
Дональд Кнут написал TeX на паскале.
Это значит, что язык хороший.
Во времена, когда "ничего не было", и ТеХ был "нормуль", и паскакаль вроде как считался за язык. Но время определило победителей - Word и C#. :)
> Во времена, когда "ничего не было", и ТеХ был "нормуль", и паскакаль
> вроде как считался за язык. Но время определило победителей - Word
> и C#. :)это ты сейчас просто так ляпнул или знаешь про C# ?
TeX до сих пор остаётся центральным инструментом сочинителей текста и замены ему нет. И довольно странно предлагать в качестве замены Word — инструмент для ведения бухгалтерии.
> определило победителей - WordСразу видно, что ты формулы там не набирал.
Ахаха :-D! Word заменил Tex :-D. Насмешил. До сих пор используем в разных проектах.
Титаны уходят. А остаются... кто?
Не он первый не он последний, CS идет вперед, в соответствии с развитием производительных сил, возникают те или иные технологии, новые парадигмы в прогаммировании, новые теории, почти в каждом крупном универе есть корифеи не хуже и не менее выдающиеся.
вот туда же - https://en.wikipedia.org/wiki/Category:Programming_language_...
Ну к примеру Алгоритм Хиндли — Милнера - на котором основаны почти все современные языки (с элементами функциональной прадигмы) - придуман в 58 году, доказан в 85.
Вот эти вот ученые например внесли вклад не меньше а то и больше.
Т.е. совершенно бесполезный алгоритм в современном мире
О сколько накидали комментов я тоже вот хочу накинуть - изучал как первый язык паскаль для RT-11, там было какое что то от МИЭМ - компилятор часто выпадал с ошибками, потом появился ТурбоПаскаль под ДОС, интересный и удачный инструмент, книжка была классная про ТурбоПаскаль 5.0 - я помню зачитал до дыр. Но тут внезапно мой товарищ рассказал мне что есть такой язык C++ который крут...
Это был 92 год.
Кстати Borland Turbo C++ 1.0 продавался в коробке с несколькими дискетками и с переведенной на русский документацией по С++ в соседнем книжном магазине.
К паскалю после нормального ЯП возвращаться не хотелось, паскализмы в коде медленно изжились по мере практики, но не сразу :)Ну а кроме Вирта были есть и будут и другие теоретики программирования и дизайна ЯП, не он первый не он последний.
Великий дядька.
Что то все упёрлись в языки, а про его книги и идеи мало говорят.Например, "Алгоритмы + структуры данных = программы" - должна быть базой. Независимо от языка.
Значит, местные комментаторы о паскале не учились систематически программировать?
Для того, чтобы систематически программировать, совершенно не нужно знать про паскаль и прочие модулы.
Что меня всегда удивляло, так это то, что будучи, типа, специалистом по компиляторам, этот Вирт был против goto, без которого эффективный синтаксический анализатор написать невозможно. Без goto невозможно даже выйти из вложенного цикла не плодя говнопроверки насчет текущего уровня вложенности.
Запрет на использование нескольких точек входа в процедуры приводит к раздутию и повторению кода. Сопрограммы тоже отрицались Виртом и это опять усложняет программирование компиляторов.
Одним словом, Вирт потратил жизнь, чтобы програмирование из искусства превратить в ремесло, к счастью этого не случилось.
Назовите хотя бы дюжину рабочих языков, компилятор которых не был бы написан на си, или программы, написанные на них, не опираюлись бы на стандартную Си-библиотеку (т.е. все равно без си не обошлись).
Разве только те, которые были разработаны до си, типа кобола или фортрана.
> этот Вирт был против gotoТы не поверишь (с), но в паскале 70-го года специально для Вас был goto 😜
End.
дело его живо и развивается
Интересно, что немец Конрад Цузе в одиночку проектировал не только первые работающие компьютеры, но и высокоуровневые языки, компиляторы, а также придумал то самое процедурное программирование, сообразив также и стандартизировать библиотеки. Позднее, как и Вирт, работал в Швейцарии. Причем независимо от таких пионеров, как Нейнман и Тьюринг. Как уважаемое опеннет-сообщество относится к этим трем господам?Тут многие говорят, плох или хорош паскаль, даже TeX на нем изначально написанный упомянули. Можно сюда добавить тот же PhotoShop. Вопрос: почему оба этих проекта, как и другие, были переписаны на других (понятно, каких) языках? Чем КОНКРЕТНО Паскаль был плох и неадекватен?
Немного философский третий вопрос: многи анонимные комментаторы и контрибуторы в открытые проекты осознают, что не оставят такого же наследия. Как они относятся к такой перспективе?
Если посмотреть на развитие науки и техники то везде будет одна и та же тенденция - вначале основоположники начинают и разрабатывают первые образцы техники, технологий, теории, кстати могут ошибаться и даже заблуждаться. Причем часто это происходит параллельно множеством людей во многих странах и университетах - см. появление радио например, после это новое развивается, ошибки основоположников обходятся, удачные теории уточняются. Каждый новый виток дает более сложные теории и технологии. Корифеи офигели бы если бы стали разбираться что было сделано после них - таков путь прогресса.
Незаменимых людей нет - если уровень развития позволяет то к одинаковым результатам приходит много людей почти одновременно.
PS На паскале бы точно не стал ничего писать, эстетика языка вызывает изжогу
Анонимы кстати могут заниматься более сложными вещами между прочим, чем ваять 100501 интепретатор/компилятор - это скучная рутина - курсовик для студентов 3го курса - если знания и опыт есть то поле для деятельности огромно - от движков ИИ до графических, да что угодно можно делать и все будет полезно и нужно, хотя бы почитайте Скиену и его примеры что ему пришлось разрабатывать например.
Три вопроса -- три ответа. Спасибо всем ответившим.
Всех с Рождеством
Тут спросили почему ТЕХ и ФОтошоп были на паскале а потом были переписаны на другом. Почему? Во первых, на Сях есть более поддерживаемых ОСей и железа. Поэтому переписанный проект на Сях соберется на больщем числе ОСей и железа. Наверное это ГЛАВНАЯ ПРИЧИНА. Переписали на Сях - получили больше ОСей. Во вторых, на Сях гораздо лучше оптимизации. Даже на современном паскале, FPC, нет многих оптимизаций. И код неоптимален. Хотя сам FPC удобен! Так что вот. ДВЕ ПРИЧИНЫ главные. И набор ОСей очень важен!
А ведь и правда, несмотря на множество реализаций Паскаля в 80-е годы, разного качества, они были не очень-то совместимы между собой, Си был и остается гораздо более портируемым. Турбо Паскаль же был только одним из. Как-то не приходила в голову эта причина, что даже фотошопу возможно были нужны разные ос.
Спасибо за ответ!
Си портируемый потому, что для него есть серия стандартов, совместимых сверху вниз -- современный компилятор (ISO/IEC 9899-2011) кушает код пятидесятилетней давности и выдает рабочую программу.
Языков такого рода мало и паскаля среди них нет.
В группе стандартных и поддерживающих обратную совместмость вообще только кобол, ада, си и фортран.
Даже с++ не попадает в эту группу -- начиная с 2011 года с++ стал сильно терять обратную совместимость. Т.е. если я укажу -std=c++14, то код, который собирался и работал при -std=c++11 может и не собраться, а если соберется, то результаты на выходе могут быть до удивления другие.
Кому-то такое нравится, типа, новые фичи главное, остальное же мелочи. Но в реальной практике это чаще всего жопа.
Пример из жизни -- некоторой сертифицированной конторе заказана разработка программного комплекса. Все было сделано как полагается, даже присвоена литера O1, все было внедрено и отлично работает 10 лет. Проходит еще 5 бухгалтерских лет, меняется железо и тут выясняется, что некоторые аппартные математические расширения базовой архитектуры, которые были в коре два дуо, новым железом не поддерживаются и программы комплекса при запуске падают по SIGFPE и SIGILL. Т.е. необходимо комплекс пересобирать под новое железо. И тут вылезает проблема, что новый компилятор генерирует туеву хучу пердуперждений, в конце концов выдает ошибку и на этом все завершается. Устанавливается "тот самый" компилятор, благо в линуксах все ходы записаны, и все нормально собирается и даже регрессионные тесты проходят молча бит в бит.
> Си портируемый потому, что для него есть серия стандартов, совместимых сверху вниз
> -- современный компилятор (ISO/IEC 9899-2011) кушает код пятидесятилетней давности и выдает
> рабочую программу."рабочую программу."
Ха, ты хотел сказать компилируемую)?
Сколько приложенией для которых тип и версия компилятора просто прибита гвозьдями?
И когда один и тот же код, работает по разному в зависиммости от компилятор, его версии, фазы луны и левой пятки разработчика.
Ибо UBшки в разных версиях одного и того же компилятора могут выдавать разный результат.
Что типа
stackoverflow.com/questions/949433/why-are-these-constructs-using-pre-and-post-increment-undefined-behavior и https://stackoverflow.com/questions/22785705/different-resul...И для с++ почти то же самое
stackoverflow.com/questions/75606715/why-different-output-when-run-program-compiled-with-gcc-and-clangВ общем то что ISO С назвали стандартом, это просто позор.
По Вашей ссылке на стековерфлоу UB как раз описано в стандарте (C11). Можно это также критиковать, но такого было изначальное решение разработчиков языка. В соседней теме тоже Perl за встроенный eval критикуют привычно. Хуже, когда UB в стандарте не описано и гуляет от версии к версии компилятора.
Все тама будем...
RIP.
R.I.P.
🙏
Заменить begin end на { } будет почти тот же С, но однозначнее, логичнее.
А в OBERON он капс зря конечно влепил. Это он в расчете на примитивные редакторы без подсветки ключевых слов.
больше begin end бесило только сваливание всех переменных в одно корытце в начало функций.
Вроде как сейчас это исправили, не смотрел, но в свое время мучило.
А нравилось - with и более читаемая объектная модель. С архаичным диалектом Паскаля ясно что не сталкивался, ибо не дед.
Все компиляторы Pascal написаны на C
человек произошел от обезьяны
freepascal на Паскале
не хочу расстраивать но первые годы GCC был написан на Pascal
> не хочу расстраивать но первые годы GCC был написан на PascalНе хочу расстраивать, GCC перетащили "существующий компилятор
из Ливерморской национальной лаборатории Лоуренса с Pastel на C" ...Ни грамма Паскаля ни в какой версии ГЦЦ не было
https://en.wikipedia.org/wiki/GNU_Compiler_Collection#History