Змінюй хід війни! Допомагай ЗСУ!

Какой язык программирования наиболее перспективный?

🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #441
Блин, ну нет языков Turbo Pascal и Oracle есть языки Pascal и SQL(PL-SQL)
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #442
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #443
Предлагаю составить список "мертвых" языков (не всех, а основных)

Гарантированно "мертвых" - это будет сложно, т.к. для почти любого популярного в прошлом ЯП с большой вероятностью найдется какая-нибудь legacy система, которая до сих пор поддерживается.

Но если этот фактор исключить из рассмотрения, то, для затравки:

PL/1
Algol
Simula
Prolog
COMAL
Modula-2
APL
Oberon

И я бы еще добавил список ЯП "ограниченного использования":

Ada (разве что американская оборонка)
Fortran (научные расчеты)
Lisp (Emacs, некоторые САПР, также в виде диалектов служит скриптовым языком для некоторых приложений, например, Gimp и Audacity)
COBOL (поддержка бизнес-систем на мейнфреймах, написанных ХЗ когда)
Logo (? - не уверен, что в настоящее время используется даже для обучения)
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #444
АДА активно используется не только в оборонке а и в промышленности.
по крайней мере очень много промышленных роботов-манипуляторов под ней жужжит.
при этом я исключаю авиаонику и все что в стандарте НАТО.
у нас в общем тоже - стандарт мил 1533 еще в советские времена в гост перевели.

поскольку сейчас большинство компутеров работает в развлекательных технологиях то на первое место вышло легкость написания -сопровождения. поэтому компиляторы утрачивают популярность.
подавляющее новых языков программирования - интерпретаторы.
а то и какие нить виртуальные машины.
да и такие виды переменных как переменные с фиксированной точкой - я и не слыхал есть ли в современных интерпретаторах
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #445
да и такие виды переменных как переменные с фиксированной точкой - я и не слыхал есть ли в современных интерпретаторах

неясно о каких интерпретаторах вы говорите, интерпретаторы давно стали непопулярны. Сейчас мода все компилировать, даже языки которые традиционно были интерпретируемыми компилируются JIT-ом.
В таких языках как C# такой тип есть - decimal, в Java - BigDecimal
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #446
C++ форева! что ни говори, а на плюсы требуется оч много программистов... не раз видел рекламу в метро, к примеру, да и вообще по сайтам программерских контор
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #447
да и такие виды переменных как переменные с фиксированной точкой - я и не слыхал есть ли в современных интерпретаторах

"такие виды переменных" появились как следствие аппаратных и других ограничений.
в остальном оно источник вечного гемора, рудимент от которого надо избавляться, чем быстрее, тем лучше.
но некоторым оно до сих пор божья роса...
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #448
"такие виды переменных" появились как следствие аппаратных и других ограничений.
в остальном оно источник вечного гемора, рудимент от которого надо избавляться, чем быстрее, тем лучше.
но некоторым оно до сих пор божья роса...

абсолютно не верно. это первая реализация ММХ команд :D
АДА изначально делалась на свой собственный ада процессор с аппаратной же реализацией кода самого языка ада. при этом этот процессор изначально был 32 разрядным. 386 процессора тогда еще и в планах не было.
просто поскольку в те времена компьютеры в основном использовались для расчетов и управления то и 8 знаков после запятой нафиг никому не нужны.

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

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

ну васчета как тока входишь в мир *никсов - так сразу скрипты и интерпретация. а поскольку весь вэб это процентов на 99 никсы - то соответсвенно перлы и пхп и прочее. я уж не говорю про яву с ее собственной машиной. кстати визуал барсик тоже из той же оперы.
краем уха слыхал что и си шарп тош недалеко ушел.
не компилит в машинный код а сворачивает как Форт или Паскаль в свой свернуто-сшитый код. а потом исполняет.
разве не так ?
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #449
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #450
А может ты и женщин понимаешь?
угу - поэтому до сих пор не женат :D

В таких языках как C# такой тип есть - decimal, в Java - BigDecimal

только что погуглил - просмотрел - это абсолютно не то !
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

Floating Point and Decimal Types
A C# floating point type is either a float or double. They are used any time you need to represent a real number, as defined by IEEE 754. For more information on IEEE 754, visit the IEEE Web Site. Decimal types should be used when representing financial or money values. table 2-2 shows the floating point and decimal types, their size, precision, and range.
Table 2-2. The Floating Point and Decimal Types with Size, precision, and RangeType Size (in bits) precision Range
float 32 7 digits 1.5 x 10-45 to 3.4 x 1038
double 64 15-16 digits 5.0 x 10-324 to 1.7 x 10308
decimal 128 28-29 decimal places 1.0 x 10-28 to 7.9 x 1028

в яве тоже не то - постить не буду - но люди на форумах плюются от БИГдецимал. при приведение его к нужному виду.
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #451
все инженегры знают - 4ех знаков после запятой достаточно ;)

не неси хуйни

стою у него за спиной и легко понимаю его код на перле.

жена у меня то же самое говорит.
правда если поменяться местами, результат пока не очень.
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #452
это не хуйня - это проверенная жизнью поговорка инженегров-ракетчиков.

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

чет по твоим коментам не видно что ты програмер. потому как двумя постами выше ( да другими в этой теме ) говорится о том что язык программирования в отрыве от области применения обсуждать бесполезно.
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #453
это не хуйня - это проверенная жизнью поговорка инженегров-ракетчиков.

а. понятно. тех самых, что до сих пор блок-схемы малюют.

чет по твоим коментам не видно что ты програмер.

по твоим тем более.

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

тебя в пещере какого периода откопали?? мелового или юрского?
 
Останнє редагування:
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #454
я уж не говорю про яву с ее собственной машиной. кстати визуал барсик тоже из той же оперы.
краем уха слыхал что и си шарп тош недалеко ушел.
не компилит в машинный код а сворачивает как Форт или Паскаль в свой свернуто-сшитый код. а потом исполняет.
разве не так ?

не так. совсем не так. Рассмотрим на примере C#:
1) На входе имеем исходный текст (текстовый файл)
2) После компиляции получаем exe, который на самом деле является контейнером для IL байт-кода. Этот exe и распространяется конечным юзерам
3) При запуске этого exe файла, управление передается JIT (Just In Time) компилятору IL кода. Который компилирует IL-байт код в машинный код (аналогичный тому что производят классические компиляторы). JIT компилятор знает на каком конкретно типе проца нужно выполнить код, какие есть ресурсы и т.п. С учетом этого он максимально эффективно компилирует функцию-точку входа в IL байт-коде в машинный код и передает ему управление. При компиляции все вызовы функций заменяются на передачу управления в JIT
4) Когда машинный код скомпилированной функции Main дойдет до вызова метода, управление попадет опять в JIT и он скомпилирует этот метод. После этого все ссылки на этот метод будут заменены на адрес уже скомпилированного машинного кода. Т.е. при втором, третьем и т.д. вызове, уже просто вызовется скомпилированный ранее код.

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

Есть тут и узкое место - первоначальный запуск приложения может занять больше времени чем нативный код от классического компилятора C++. Это тоже решается путем пердкомпиляции всего кода и размещении в системном хранилище уже скомпилированного кода.
Это делается путем запуска ngen.exe install <имя сборки>
После такой операции, при запуске exe файла с IL байт-кодом, система не станет его компилировать, а возьмет просто уже готовый скомпилированный машинный код из системного хранилища и запустит на выполнение.

Все тоже самое относится также и к Java, и не только. JavaScript, LUA и другие скриптовые языки тоже как правило компилируются JIT'ом ;)


Но это еще не все. Байт-код хранит много информации и это дает возможность прямо во время выполнения анализировать, обращаться и вызывать неизвестные типы данных/методы и даже генерировать новые прямо в рантайме (reflection). Это дает огромнейшие возможности, которых классические языки практически лишены.

Могу точно утверждать что Java, C#, JS, LUA сегодня используют JIT. И я не слышал чтобы где-то пользовались интерпретаторами для них.
 
Останнє редагування:
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #455
они в АСУНИИВУГЛУСКР и слов то таких не знают.
зато навсегда осталась привычка бороздить просторы оперного тятра и вещать с броневичка.
по ней они кстати и идентифицируются.
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #456
Чтобы не быть голословным, вот пример как выполняется программа на C#:
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.


Замечу также что в отличие от C++ JIT'у по барабану какой тип процессора используется - x86 или x64, она будет выполняться всегда на родном для процессора машинном коде. На x64 просто больше ресурсов программе будет доступно.
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #457
не так. совсем не так.
--skip--

оказывается именно так по сути - компилится не в код х86 а в код своей виртуальной машины.

я тут спросил у людей что такое си шарп - мне ответии - так микрософт обозвал свою ява-машину потому что когда он сделал чет вроде J++ - то на него в суд подали. чтоб отстали - назвал си шарп.
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #458
оказывается именно так по сути - компилится не в код х86 а в код своей виртуальной машины.

перечитай еще раз.
уровней компиляции может быть несколько.

я тут спросил у людей что такое си шарп - мне ответии - так микрософт обозвал свою ява-машину потому что когда он сделал чет вроде J++ - то на него в суд подали. чтоб отстали - назвал си шарп.

способность сотрудников АСУНИИВУГЛУСКР высасывть из пальца хуиту, абы не читать, иногда просто поражает.
самое интересное, что сам же придумщик быстро начинает в нее верить...

The name "C sharp" was inspired by musical notation where a sharp indicates that the written note should be made a semitone higher in pitch.[8]
[...]
The "sharp" suffix has been used by a number of other .NET languages that are variants of existing languages, including J# (a .NET language also designed by Microsoft which is derived from Java 1.1), A# (from Ada), and the functional programming language F#.[11] The original implementation of Eiffel for .NET was called Eiffel#,[12] a name since retired since the full Eiffel language is now supported. The suffix has also been used for libraries, such as Gtk# (a .NET wrapper for GTK+ and other GNOME libraries), Cocoa# (a wrapper for Cocoa) and Qt# (a .NET language binding for the Qt toolkit).
[...]
In January 1999, Anders Hejlsberg formed a team to build a new language at the time called Cool, which stood for "C-like Object Oriented Language".[16] Microsoft had considered keeping the name "Cool" as the final name of the language, but chose not to do so for trademark reasons. By the time the .NET project was publicly announced at the July 2000 Professional Developers Conference, the language had been renamed C#, and the class libraries and ASP.NET runtime had been ported to C#.
 
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #459
оказывается именно так по сути - компилится не в код х86 а в код своей виртуальной машины.

вы так ничего и не поняли. C# использует полноценную модель компиляции. Никто не мешает компилировать C# код в машинный, только смысла в этом нет, т.к. это сделает исполняемый файл зависимым от железа и системы.
Компиляция C# в машинный код происходит в два этапа:
1) Компилируется исходный код в универсальный байт-код.
2) На машине пользователя байт код компилируется в машинный, это дает возможность при компиляции использовать максимум оптимизаций, которые невозможны для C++ компиляторов.

Например если вы скомпилируете C++ код с оптимизациями для процессора Inter Core Duo E6750, то ваш исполняемый файл не будет работать на других процессорах. У C# нет такого недостатка, т.к. оптимизация машинного кода происходит непосредственно на машине пользователя. Поэтому исполняемый файл написанный на C#, будет работать на любом процессоре и при этом использовать оптимизации доступные для этого процессора. На C++ вам пришлось бы скомпилировать пол сотни однотипных исполняемых файлов для каждого из существующих процессоров.

Когда разрабатывали C++, такой уровень технологии был еще недоступен, поэтому модель компиляторов C/C++ упростили до уровня прямой трансляции в машинный код. Это большой недостаток C++, и одна из основных причин из-за которых этот язык по сути умирает.

я тут спросил у людей что такое си шарп - мне ответии - так микрософт обозвал свою ява-машину потому что когда он сделал чет вроде J++ - то на него в суд подали. чтоб отстали - назвал си шарп.

не совсем так, майкрософт хотел изменить Java, чтобы возможности этого языка были лучше приспособлены к Windows. Сильно изменить. Но Sun была против. Тогда майкрософт сделали свой аналог, ни в чем себя не ограничивая, с учетом всех необходимых требований и с учетом граблей на которые до этого наступала Java. Сделали полностью новую платформу, чтобы не зависить от старых рудиментов. В этом изюминка C#.

C# уже вытеснил C++ с рынка десктопных приложений для Windows, это уже давно свершившийся факт. C++ используется только в старых проектах - там где уже есть куча кода на C++ и переписывать все слишком дорого. Но даже в таких проектах, новые модули обычно на C# пишут.
 
Останнє редагування:
  • 🟢 14:50 Відбій тривоги в м. Харків та Харківська територіальна громада.Слідкуйте за подальшими повідомленнями.#м_Харків_та_Харківська_територіальна_громада
  • #460
У Java был фатальный недостаток =)
Кста странно, но у M$ часто так.
Сами концепции CLR ИМХО намного лучше чем у JVM
А вот реализация в плане кроссплатформенности...
Mono не то.
 
Назад
Зверху Знизу