LINUX.ORG.RU

Как выбрать язык программирования?

 


1

3

Передо мной встал вопрос выбора языка. В уч. заведении мы изучали Python и C, а дома я писал на Java со Spring и мобильные приложения. Также пробовал C++ и Android-разработку на Kotlin — так прошли мой второй и почти третий курс. В уч. заведении нам говорили выбрать язык на котором будем писать диплом и курсовые работы, но при этом дают базовые знания по нескольким. Лабораторные и курсовые можно писать на чём угодно — я каждый раз писал на разных. Препод сказал что если я не выберу один из то он просто перестанет проверять мои работы. Одногруппники в большинстве выбрали Python, но у меня как-то к нему не цепляет и не срастается ничего. Я не прошу выбрать за меня я понимаю что никто за меня не выберет но за против ну или на путь какой-то натолкнете.



Последнее исправление: archpeak (всего исправлений: 1)

Лабораторные и курсовые можно писать на чём угодно — я каждый раз писал на разных. Препод сказал что если я не выберу один из то он просто перестанет проверять мои работы.

Пиши на Common Lisp. Пусть препод страдает.

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

Кстати, похожий ажиотаж по поводу компьютеров вообще - имел место в конце 80х-начале 90х. Тоже звучали голоса что сейчас бы купить много компьютеров, внедрить их везде, вот тогда заживем(«программирование-вторая грамотность»- А.Ершов). Ну вот внедрили чуть ли не каждому в карман. Однако гениев вокруг как-то особо не прибавилось. Да даже просто относительно приличных программистов не так уж и много. Хотя бизнес готов платить им довольно хорошую зарплату. Но курьером работать - проще.

тут надо вспомнить контекст этой движухи вообще про Computer-Aided Something, а также «структурного программирования» (is overrated (c) softpanorama), «программирования на естественном языке», деление на abcdefGOL/xgol алгОЛ– объектный язык и общий метаязык, common lisp/business/cobol, «структуральнейших лингвистов» в духе Стругацких (из «Понедельник, XXI век» – кажется), «лексикон программирования», «словарь форта» Лео Броуди, «вторую грамотность», «литературное/грамотное программирование» и вообще…

алгол 60: странный и не очень практичный, не вполне понятна его концепция.

алгол 68: философия «ортогональных» концепций + более практичный, но еще более странный (на первый взгляд, на второй – как раз более разумно спроектированный язык).

алголы особенно 68 с многоэтажными W-грамматиками Вейнгаардена – это вообще на мой взгляд, отличный пример того – что получается когда конструируемый искусственный язык программирования конструируют лингвисты, а не программисты.

еще из языков, придуманных лингвистами-гуманитариями: SNOBOL(тоже xgol), Icon, Unicon, Perl Ларри Волла.

Лого, рефал, ребол, лисп, смоллток те же – для обработки «алгебры программ» на каком-то метаязыке x-выражений, тоже. но это уже скорее (мета)математики а не лингвисты.

не сказать чтобы всегда получалось плохо, скорее – с непривычки странно. но довольно практично если ограничить подход и концепцию и контекст применения. например, в Icon на котором написан noweb Нормана Рамси (noweb/notangle, не только аwk, сколько icon) – это генераторы и ковыражения.

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

я понимаю этот период, с 60х до середины 80х – как период не вполне оправданного технологического оптимизма, идею что вот дескать есть символьная теория и структуральнейшая лингвистика которая поверхностный конкретный синтаксис как-то преобразует в глубинные структуры семантические, откуда-то сама собой возьмется дополнительные штуки которых сейчас пока не хватает, и из этого «супа из топора» внезапно наступит всеобщее счастье, как-то само собой, ога.

типа «радио изобрели – а всеобщего счастья почему-то не наступило, само собой».

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

мы пишем не текстом на языке буквами,складывая в слова и предложения (и вообще не известно, думаем на языке или скорее на нем просто говорим, а думаем какими-то глубинными структурами) – а скорее устойчивыми выражениями, идиоматическими, фразеологизмами, мемами. этой вот лексикой и прагматикой.

которым можно найти аналоги и в языках программирования.

когда пытались формализовать лингвисты, из структуральнейших и семантико-семиотических символьной теории а не новомодных компутационно-статистически-нейросетевистко-коннекцивистксих – явно преобладал этот подход про объектный язык, о котором рассуждаем (язык алгоритмов, например) и метаязык этого языка – на котором рассуждаем (метаязык WG-грамматик, РБНФ/ЕБНФ, LL(*), LALR и т.п. о синтаксисе; «общий язык» о семантике, лексике и прагматике)

в 1985 году после ОС ЕС и OS/360, TSO и только-только начавшегося там появляться «разделения времени» – например, Цейтлин, Нариньяни критиковали такое «равнение на отстающих» в смысле мейнфреймов а не юниксов, например.

хотя те же юниксы появились как перенос мейнфреймного мультикса с PL/I и ассемблера на B, BCPL, o-code, и далее – C. c упрощением по ходу дела. так что «разделение времени» появилось еще в мультиксе, на который и можно было ориентироваться вместо OS/360.

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

в 1985 А.П. Ершов (изобревший также Ершол и ШАЯ – см. например, «хороший» учебный язык, на расте, лол :)) tsoding/good_training_language – сюда же, также см. КуМИР, ЛогоМиры и РАПИРА)

– и написал ту программную статью про «программирование – вторая грамотность» и про «лексикон программирования» на oberoncore ae1983.pdf и обсуждение, еще см. тут

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

выводы – нужно не только экстенсифицировать, но и интенсифицировать. не только повышать количество «много компьютеров, и внедрить это Computer-Aided чего-нибудь везде, а дальше оно как-то само собой образуется из количества» – а ровно наоборот, повышать и «качество программирования», качество понимания и рассуждений о задаче.

то есть, исходные данные для анализа: программистов просто на порядки меньше в отрасли в целом, чем весь состав авторов OS/360 например (чуть ли не 100 000 программистов в одном только ибм против 1000.10000 программистов во всем СССР).

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

отсюда – в каком-то смысле, «экстремальное программирование» основанное на формальных методах, например, верификации и «доказательного программирования»:

Лексикону учат в ВУЗе раньше, чем какому бы то ни было рабочему языку (игрушечный практикум не в счет). Доказательное программирование является основой курса программирования, подкрепленного каторжным тренингом в духе лучших задачников по математическому анализу.

Программиста бьют по рукам, если он посмеет написать оператор цикла, не найдя перед этим его инварианта.

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

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

то есть, «лексикон программирования» – это скорее про прагматику+семантику, а не только семантику или морфологию, или там синтаксис.

синтаксис «алгебры программ» метаязыка – тут вообще не причем, скорее это идея про SPARK-подобное Design By Contract с предусловиями, постусловиями, инвариантами; FoNC/STEP-OMeta подобное про «20 тысяч строк, которые потрясут мир»: хабр ещё тут: compiler.su; Design By Contract (c) Bertran Meyer, Eiffel, – объектный сервер-поставщик и объектный клиент-потребитель, метод BON, «метод Eiffel», "почувствуй класс с Эйфель, или объектно-ориентированное конструирование программ.

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

примерно в то же время на эти процессы наслаивались и «структурное программирование», «программирование на общем и бизнес-языке и метаязыке. конкретном объектном языке алгоритмов», «компьютеры пятого поколения» с программированием на параллельном прологе, прозрачно интегрируемым с си (типа Mercury); транспьютеры и Оккам; в 90-е – активное навязывание объектно-ориентированного программирования и даже языков четвертого поколения (4GL, например, Клиппер, Кларион, PowerBuilder, да тот же голимый 1С, например); и чуть-чуть недопилили до 5GL : «языково-ориентированного программирования» в Language Oriented Framework Мартина Фаулера и прочих MetaCASE MetaDSL (типа того же лиспа и смоллтока как универсального такого конструктора непонятно чего, какого-то неведомого метапрога, лол)

в этом смысле, разница между 5GL и 4GL/3GL – вполне себе заметна и ощутима.

возьмем например, кобол, да хотя бы и ГОСТ стандарт 1987 года с синтаксисом на русском языке. и сравним например с Кларион и тем же самым голимым 1С. А еще например, со смоллтоком – Dolphin SmallTalk, VisualAge / Visual Works smalltalk, ENVY среда типа CVS/SVN/Perforce/BitKeeper на visual Age смоллтоке, GEMSTONE ооСУБД на смоллтоке, WebObjects Apple ObjectiveC webapp NeXT framework, FoNC/OMETA, COLA by Ian Piumatra, Squeak smalltalk, Croquet, OpenCroquet, OpenCollab, krestianstvo.org – версии sdk1, sdk2 на смоллтоке, версия sdk3 – на JavaScript в браузере.

из этой развертки и перспективы – примерно понятно про «объектно-ориентированное конструирование», MetaDSL и куда это все развивается.

  • кобол – классический 3GL язык «структурного» программирования, скорее даже в духе литературно-грамотного метапрограммирования. например, мануал по GNU COBOL написан на RST/Sphinx питонистой разметке типа Markdown, AsciiDoc именно в таком стиле с примерами. сама «структура разделов» кобольной программы именно на такую аналогию с книжкой с оглавлением или «лексикона программирования» на «общем» языке структурного алгоритмического программирования бизнес-объектов и напоминает.

сила кобола – в таблицах, на которых делали и поиск, и destructing-bind в духе лиспа, и парсер на конечных автоматах в том же Libero, например.

редактор форм и отчетов и хтоничненькие RPG и Adabas.

в общем-то, уже структурного программирования тут было достаточно, еще без ООП. а уж когда объекты появились – язык кобола объектно-ориентированного на мой взгляд, стал гораздо круче того же 1С. хотя вот 1С++ под семерку как компонента – это пример того чем могло бы стать 1С если бы его правильно бы развивать на самом себе, в духе смоллтока.

anonymous
()
Ответ на: комментарий от anonymous
  • Project Oberon и особенно BlackBox Component Pascal, кстати, тоже интересны для сравнения в этом акцепте. в смысле «компонентно-ориентировнного, сборочного, синтезирующего, конкретизирующего» программирования, модульного. КОП = ООП без наследования (хотя например SOM поверх CORBA – c наследованием справлялся, а вот в COM уже было основано больше на трейтах и миксинах через шаблоны С++ и множественное наследование, то есть – COM – компонентная модель без наследования).

в этом смысле, Нуралиев сотоварищи изобретали какой-то недоделанный аналог того же BlackBox Component Pascal Oberon-2 среды, вдохновляясь Delphi, Visual Basic и Visual C++ с AppWizard кодогенератором бойлерплейта, а не – нормальными компонентными модульными технологиями программирования. а затем в восьмерке сделали недоделанный VB.NET

недоделанный такой 4GL по сравнению с более полноценным 5GL MetaDSL – уже хотя бы потому что невозможно сделать First class objects, first class types на таком недоделанном 4GL.

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

если сравнивать, например, тот же Dylan Functional Objects – функциональные объекты лиспа с алгольным синтаксисом Dylan и процедурными макросами D-expressions – более адекватны в этом смысле, first class functional objects.

  • в этом смысле, начиная с Symbolics Genera/OpenGenera ZetaLisp, Common Lisp, Apple/Gwydion/Open Dylan, goo (как Dylan только схема), kernel vau-expressions John Schutt, Смоллток как среда и объектно-ориентированный метаязык конструирования общих бизнес метаобъектов; FoNC/STEP, OMETA, Frank, OpenCroquet/OpenCobalt/krestianstro.org; Eltate/TaoOS/ ChrysaLisp, AOS BlueBottle Active Oberon-2, Plan 9 OS plain Kernigan C в духе CSP в духе Оккам с PAR/SEQ/CHAN, Inferno OS/Limbo/Dis, Go — это все примеры таких более модульных, более компонентных, более first class object сред для конструирования таких вот MetaDSL на самом себе паки истинный метапрог из самого себя забутстрапившегося в духе метакомпиляторов форта или небесной дискеты с первослакой патриковой, лолЪ
anonymous
()
Ответ на: комментарий от anonymous

примерно в то же время, в начале-середине восьмидесятых:

  • Дональд Кнут пишет TAOCP Art of Computer Programming про алгоритмы, для чего делает свою вспомогательную метатехнологию tex и пишет «Tex: The Program and the BOOK» на своей вспомогательной мета (или уже, метамета?) метатехнологии грамотного literate программирования

я назвал эту технологию Literate programming, в надежде на то, что программисты заинтересуются и им станет стыдно быть безграмотными

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

совершентствуя свой уровень понимания задачи.

если непонятно – пишем мурзилку, шпаргалку. где объясняем виртуальному собеседнику на самом высоком уровне, выше чем ЯВУ – на языке человеческого понимания что хотим сделать. а потом делаем ровно это, и не больше – руководствуясь KISS принципом.

описываем «что»,«зачем», общий контекст требований и способа реализации. а «как», «как конкретно» – и так понятно из исходников.

  • Адольф Львович Фуксман изобретает «расслоенное программирование» – то есть, аспектно-ориентированное.

в ходе написания компилятора параллельного фортрана в конце 70х-начале 80х в РГУ нии ПМ изобрели технологию внедрения извещений на изменение, тестирования, методик приёмки.

в каком-то смысле, это ENVY+SPARK+-AspectL/AspectJ, только реализованный на черчении ЕСПД документации и технологиях того времени.

  • Лео Броуди пишет книгу про словарь форта, «Thinking FORTH!», «форт как образ мышления» – в смысле DSL/MetaDSL/лексикона программирования – но тут скорее ограничено лексикой а не семантикой и прагматикой как у Ершова.

что любопытно, для иллюстрации использует классический SADT процесс разработки с Гейнса-Сарсонса подходом структурного анализа и программрования, конструирования программ, стандарты IDEF, деревья решений, таблицы решений, структурное программирование.

то что иероглифы на форте не мешает ему изложить «словаря форта» лексикон программирования в эдаком структурного программирования MetaDSL ориентированном виде.

  • в «Programming a problem oriented-language» by Chuck Moore, автора форта POL.pdf – про это еще подробнее написано.

так что к 1985 году у А. П. Ершова, активно интересующегося не только алголом-68, Ершолом и ШАЯ – но и лиспом, например (странно, что не фортом) — были все основания полагать, что

  • нужна новая технология интенсификации программирования: синтезирующего, сборочного, конкретизирующего, модульного компонентного

  • нужно описание не только и не столько семантики и лексики – сколько прагматики и ограничений в духе Design By Contract, FoNC/OMETA STEP/COLA project, TDD, BDD, feature-driven development вроде того же кукумбера (или композиции конечных автоматов типа SWITCH-технологии Шалыто или того же Libero)

  • программисты таки возьмутся за ум и станут доказывать инварианты цикла, предусловия и постусловия в духе SPARK Ada и доказательного программирования

  • и будут больше прорабывать спецификации и владеть формальной логикой, чем это:

«хороший учебный язык» tsoding/good_training_language – лолЪ, почти совсем в духе ШАЯ, Ершола и КУМИРА

– а не тяп-ляп и в продакшн тьо

anonymous
()
Ответ на: комментарий от watchcat382
Есть на всякий, есть на случай 
В "Корабле" специалист — 
Ваш великий и могучий 
Структуральнейший лингвист. 

Собрание сочинений в 11 томах. Т. 3. 1961-1963 гг. (сборник) Аркадий и Борис Стругацкие 4,5

«Попытка к бегству» еще

Атос капитан там кажется, тоже был из структуральнейших

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

чуть ли не 100 000 программистов в одном только ибм

А программистов вообще в мире на тот момент столько было? Если конечно считать именно тех кто код писал,а не всяких операторов которые набивали написанное на перфокарты.

в виде свода фундаментальных алгоритмов вместе с полным сертификатом их правильности.

В 80е годы в СССР издавался ведомственный журнал в котором именно что публиковались алгоритмы и всякие текстовые объяснения к ним. Как точно назывался не помню,хотя и довелось держать в руках несколько номеров. Язык там был вполне себе структурный,паскалеподобный,ну или алгол-подобный.

watchcat382
()

Сходи к психологу, чтобы определить садист ты или мазохист, а потом сдай iq тест, без этого только php и java подходят, если бы ты учился в ПТУ то в принципе зашел бы и яваскрипт.

Tark ★★
()

Лабораторные и курсовые можно писать на чём угодно

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

Очевидный брейнфак напрашивается. 😊

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

А программистов вообще в мире на тот момент столько было?

интересный вопрос.

количество разработчиков OS/360 есть приблизительное по книге Фредерика Брукса «Мифический человеко-месяц» – несколько тысяч. количество разработчиков мультикса на PL/I и похожих мейнфреймов, например, берроуза на алголе-68 – тоже несколько тысяч; того же CPL/BCPL, дейкстра еще кажется компилятор алгола68 в качестве диссера писал – около десятка-единиц.

так что если общее количество программистов в одном только ибм (а еще были и DEC, и BBN: TCP-IP стек, BBN InterLisp и берроуз тот же, Xerox Parc Labs) считать – то примерно сотня тысяч в одном только ибм.

другое дело, не вполне известна их роль по отдельным проектам.

так что отличия количественные уже были на порядок. силы были сильно не равны (особенно если не развивать свой мейнфрейм БЭСМ-6, например, а копипастить OS/360).

В 80е годы в СССР издавался ведомственный журнал в котором именно что публиковались алгоритмы и всякие текстовые объяснения к ним. Как точно назывался не помню,хотя и довелось держать в руках несколько номеров. Язык там был вполне себе структурный,паскалеподобный,ну или алгол-подобный.

интересно было бы посмотреть, что-то вроде журнала «Программист», наверное. их было 2-3 варианта – один из 90х типа журнала Монитор, другой более математический.

вообще вот был например «Фонд алгоритмов и программ», ВНИИДАД тот же. писались все эти тонны документации по ЕСПД 19.000, 19.690 например как писать ТЗ (а вообще такое ощущение опять же, что структуру ЕСПД стандарта частично скопипастили с манов в OS/360 которые были несколько более подробны чем маны в юниксах на троффе, например).

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

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

архив про ШАЯ, ШИ

Подготовка государственных документов
Отражена работа А.П. Ершова в подготовке постановлений ЦК КПСС и СМ СССР по вопросам внедрения компьютеров в школьный учебный процесс (1984-1987).
Концепция информатизации образования
В 1987-1988 гг. А.П.Ершов возглавлял Межведомственную комиссию по подготовке проекта Концепции информатизации народного образования на 1990-2010 гг.
Перспективы развития ШИ
Отражена поддержка, которую оказывали школьной информатике различные общественные и научные организации.
Научный совет по проблемам образования СО АН СССР
Создан постановлением №227 Президиума СО АН СССР от 10.05.77. Председатель - академик В.А. Коптюг. А.П. Ершов - руководитель группы по применению ЭВМ в школе.
Переписка группы ШИ
в период 1979-1988 гг.
Типовой учебный кабинет
В 1984-1985 гг. под руководством А.П.Ершова были разработаны техническое задание и технический проект такого кабинета с применением микропроцессорных средств для учебных заведений.
Телевизионные уроки по информатике
В 1985 г. в школах СССР был введен предмет по основам информатики и вычислительной техники. В поддержку нового школьного курса было снято шесть учебных фильмов и две передачи по письмам телезрителей.
Школы юных программистов
Проводятся с 1976 года и являются эффективным средством иницианированных А.П.Ершовым распространения и популяризации информатики.
Публичные выступления по проблемам ШИ
в различных средствах массовой информации: газетах, на радио и телевидении; перед широкой аудиторией слушателей.
Конференции по проблемам ШИ
проводились на общегосударственном, республиканском и региональном уровнях, а также отдельными образовательными учреждениями.
Периодика по проблемам ШИ
Сотрудничество с ведущими газетами и журналами по вопросам распространения компьютерной грамотности.
Учебники
Учебники для учащихся 9-10 классов средней школы по курсу "Основы информатики и вычислительной техники" и методические пособия для учителей созданы коллективом авторов под руководством А.П.Ершова в 1984-1987 гг.
"Школьница"
Пакет прикладных программ "Школьница" был предназначен для автоматизации школьного учебного процесса (1982-1985 гг.).
ВНТК "Школа"
Временый научно-технический коллектив "Школа" был создан в 1986 г. сроком на 11 лет для проведения работ по созданию педагогического программного продукта силами ряда организаций Москвы, Новосибирска, Пущино и Переславля Залесского.
Персоналии
Представлены материалы о ближайших соратниках А.П.Ершова на начальных этапах становления направления школьной информатики (1976-1984 гг.).
Третья всемирная конференцияИФИП "Применение ЭВМ в обучении" (1981)
Швейцария; 1981. На этой конференции впервые прозвучала ставшая всемирно известной речь А.П.Ершова "Программирование - вторая грамотность".
Конференция ИФИП "Обучение для будущего" (1983)
Нидерланды, Лейден; 1983. Здесь А.П.Ершов выступил с докладом "Будущее автоматизации".
Первая международная конфренция "Дети в мире компьютеров" (1985)
Болгария, 06-09.05.1985. А.П. Ершов не смог участвовать по состоянию здоровья.
Вторая международная конференция "Дети в мире компьютеров" (1987)
Болгария; 1987. Здесь А.П.Ершов выступил с пленарным докладом "Школьная информатика в СССР: от грамотности к культуре".

как общий контекст «программирование " (или сейчас – уже моделирование) " – это вторая грамотность»

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

и КП.НТП.1986-2005 , особенно раздел 4.

4. Темпы и пропорции экономического развития в долгосрочной перспективе 4.1. Народнохозяйственная динамика 4.1.1. Исходные предпосылки прогноза народнохозяйственной динамики 4.1.2. Экстраполяционный вариант народнохозяйственной динамики 4.1.3. Вариант интенсивного развития 4.1.4. Распределение капитальных вложений 4.1.5. Сопоставление результатов прогноза показателей народнохозяйственного развития в предыдущем и настоящем варианте Комплексной программ и обоснование их различий 4.1.6. Обоснование показателей народнохозяйственной эффективности производственных ресурсов на основе обобщения материалов отраслевых комиссий 4.2. Структура народного хозяйства и межотраслевые связи

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

особенно забавно вместе с предыдущим пунктом выглядят эдакие любители экстраполировать.

еще перечитывал недавно MOTIF faq, про CDE и Xm, Xt.

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

ХЗ, может если его виджеты программировать на Ada или Common Lisp через FFI привязки – то он будет вовсе не таким страшным.

по крайней мере, C ABI переносимым.

тогда в 1998-1999 наверное тоже казалось что у Motif и CDE впереди только светлое будущее. хотя уже тогда начинали появляться и Qt и GTK.

мотиф и ЦДЕ в общем-то никуда и сейчас не делись, и работают и сейчас также как и 30 лет назад (примерно идентично, разве что кажется уникод пофиксили).

только это уже не новомодно и не молодежно, и не актуально :))

а казалось бы, вот если бы бурный рост Motif и CDE проэкстраполировать, то … :)))

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

еще перечитывал недавно MOTIF faq, про CDE и Xm, Xt.

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

плюс пресс-релизы MIT X Consortsium про Xt, Xlib, Athena Widgets.

там кстати тоже около десятка тысяч участнегов, если буквально считать.

может, как игумен пафнутий руку приложил – каждый на полстрочки, ХЗ, тут по коммитам надо считать.

но вообще такого рода мегапроекты типа X11 Xt, Xlib, Athena; COSE: CDE, Motif, Xm, Xt это в некотором роде «разработка групповухой»

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

непонятно как все это оценивать.

anonymous
()
Ответ на: комментарий от watchcat382

в общем, ажиотаж этот ограничился тем, что А. П. Ершов – он такой один.

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

каждый раз, каждые 5-10-15 лет кто-то что-то впаривает.

то программирование на естественном языке, то структурное, то объектно-ориентированное.

то очередную чудо-юдо LLM буратину недоделанную вот.

ничего принципиально нового. аж скучно стало.

anonymous
()

Сколько «строк кода» на Python,C,Java(Spring),C++,Kotlin успел «потрогать»?

о битах что «себе можешь поведать»?

стилями(императивщина, ssea(ака неизменность ), прозрачность по ссылкам ) какими творил строки_кода

проложил ли чё нить - об резолюциях

множества посредством реляций sql перепровлял?!

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

несколько тысяч.

тоже несколько тысяч

примерно сотня тысяч в одном только ибм.

Вот в этом месте логический переход для меня не очевиден и кажется преувеличением. В «несколько тысяч» - легко верю. Но «несколько раз по несколько тысяч» никак сотня не получается.

Также замечу что винды явно больше тех старых систем,а в Микрософте если верить гуглу 89 тыс программистов.

копипастить OS/360

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

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

Те журналы с алгоритмами я видел в библиотеке ВЦ Ленстройкомитета в 1991 году. Так что пока советские ВЦ действовали оно по всей видимости использовалось. А потом квалифицированные программисты массово отъехали в Израиль,и традиции были в значительной степени утрачены. В 90х за компами кто только ни сидел,в абсолютном большинстве случаев без профильного систематического образования и без доступа к тем ведомственным библиотекам где эта мудрость предков хранилась.

watchcat382
()
Ответ на: комментарий от anonymous

постановлений ЦК КПСС и СМ СССР по вопросам внедрения компьютеров в школьный учебный процесс (1984-1987).

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

Так что явно не в компах дело,а в функции образования как социального лифта. Если в первой половине 20 века Инженер был уважаемым человеком и его работа хорошо оплачивалась,то сейчас ценность высшего образования изрядно упала. Может быть и потому что общий средний уровень образованности подрос и больше нет такого гигантского разрыва между малограмотным рабочим и образованным инженером как когда-то был. А рабочих мест где реально востребован уровень знаний сильно выше среднего - не особенно много и они все заняты.

watchcat382
()
Ответ на: комментарий от anonymous

этот мотиф всегда выглядел страшным

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

watchcat382
()
Ответ на: комментарий от anonymous

такого рода мегапроекты типа X11 Xt, Xlib, Athena; COSE: CDE, Motif, Xm, Xt

А такие ли они «мега» если по объему кода сейчас оценивать? Тот же QT по количеству мегабайтов кода явно больше иксов будет. С этой точки зрения мне странно читать жалобы на якобы трудность поддержки тех же иксов,типа там кода много и никто не знает как он работает. А в QT что - мало что ли? И знатоков внутренностей много? Тем не менее версию за версией клепают,и каждый раз зачем-то всё переделывают. Ну то есть зачем - понятно,отрабатывают спонсорские деньги, но к собственно программированию это отношения не имеет.

watchcat382
()
Ответ на: комментарий от anonymous

А. П. Ершов – он такой один.

Может в смысле программирования и не один,тут важно то что один он имел существенное влияние на лиц,принимавших решения. Это опять про «роль личности в истории».

а большинству надо по быстрому тяп-ляп и в продакшн

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

каждые 5-10-15 лет кто-то что-то впаривает.

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

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

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

OS/360 навязывалась бесплатно внагрузку к совместимым моделям System/360. На что пожаловались конкуренты в антимонопольные структуры, обвинив IBM в нечестной конкуренции.

Для финансового сектора у IBM были за дополнительную плату готовые решения или полуфабрикаты для страховых компаний, банков и т.п. Разработкой, доработкой и внедрением этих полуфабрикатов и занимались остальные тысячи IBM-кодеров. System/360 - это не только ЭВМ с НМЛ, НМЖД и принтерами. Это сканеры банковских чеков, оптические распознаватели, устройства для чтения бланков, заполненных магнитными чернилами, коммуникационное оборудование и т.д.

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

А как надо?

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

Вот например хорошая книга на эту тему: https://www.ozon.ru/product/interfeys-chelovek-kompyuter-vleymink-i-kouts-r-856337967/

watchcat382
()
Ответ на: комментарий от vM

OS/360 навязывалась бесплатно внагрузку

«В нагрузку» это совсем не «бесплатно». Просто цена «нагрузки» заложена в цену основного товара. Никто не будет торговать себе в убыток.

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

«там» ризома ещё более разнообразна и нелинейна

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

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

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

В фейласафию надо запиливаться, аноньчик. Ту, которая за жисссь трёт, ё.

Хайдеггер, Шопенгауэр, Ницше, Рассел, Юм, Юнг, Фуко, Витгенштейн, структуралисты, пост-структуралисты, кто там ещё пост- есть, кто там ныне моден.

Вот ежели это всё в голове уложить — какие выводы можно сделать?

cast @qulinxao3, @Jameson, @Goat, @quickquest, @seiken, @thesis, @gns

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

Уж не очень понимаю, зачем нас тут позвали, но я бы рекомендовал вместо Ницше с Шопенгауэром (что почитать полезно, но по другому поводу) прочитать «Мифический человеко-месяц» Брукса младшего (который когда-то рулил проектом OS/360) и его же более позднюю статью «Серебряной пули нет». Вот там как раз про то, что ООП не решило проблем структурного программирования и вообще универсального решения проблем нет. Поэтому, вопрос выбора языка вообще лишен всякого смысла. Жестянщик имеет двадцать молотков, столяр работает пятнадцатью стамесками и т.д. Инструмент надо выбирать по руке и по задаче.

gns ★★★★★
()

А задачу тебе преподаватель поставил? Может от задачи начнем язык выбирать? Опять же, Java, Kotlin, C++ — это все языки одной парадигмы. Даже Питон туда же, при всех его издержках динамической типизации и странноватой объектной ориентированностью. Делать-то что хочется?

Хочешь сломать голову — бери хоть Хаскель с Эргангом, после этого даже на Джаваскрипте код будет лучше получаться.

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

Анекдот:

Сын программиста (сам программист) уехал на ДВ в метеослужбу. Отец; Как ты там? Солнце восходит и заходит по расписанию? Сын: все нормально батя. Отец: Тогда ничего не трогай. Пускай остается так.

anonymous
()
Ответ на: комментарий от gns

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

4.2 Object-Oriented Programming ?

https://www.cs.unc.edu/techreports/86-020.pdf

Покойный Брукс в одном из последних выступлений говорил, что несомненно бы использовали ОО управление сложностью, если бы во время разработки первой OS/360 эти идеи подоспели. Витали, но не подоспели.

Брукса младшего (который когда-то рулил проектом OS/360)

В целом System/360, не самой большой (но неожиданно затратной для инженеров) частью которого была OS/360.

vM ★★
()