LINUX.ORG.RU

Google дал оценку Java и C++

 , , ,


0

2

Один из ведущих инженеров Google — Роб Пайк (Rob Pike) — выступил на конференции O'Reilly Open Source Convention (OSCON) и выразил мнение корпорации о современных языках разработки и месте C++ и Java в них. Он отозвался об этих индустриальных китах очень негативно, назвав их многословными, чрезмерно сложными и неадекватными к применению в решении задач современной компьютерной инфраструктуры.
«Я думаю, что эти языки слишком сложны для использования, слишком трудны для понимания, слишком замысловаты. Они очень многословны, их сложность, громоздкость и непонятность возрастают со временем», — заявил Роб.

>>> Подробности

★★★★★

Проверено: mono ()
Последнее исправление: MuZHiK-2 (всего исправлений: 2)

Подведем итог

Васик для идиотов (c) Дейкстра,
Поцчему поцкаль не айс (с) Керниган,
Си - УГ (с) Кнут,
Си-плас-плас отстой (c) Алан Кей,
закопайте ФП (c) Вирт,
в биореактор LISP и Smalltalk (c) Мейер,
TCL нинужен (c) Столлман,
фтопку java (c) Пайк

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

>Внезапно! Потому что C++ - не скриптовый?

Да ну? А тут адепты плюсов утверждают что С++ годиться для чего угодно

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

>> числодробилка - фортран

таки С++ тут неплох


По сравнению с фортраном плох

Qt? :)


А что плохого в использовании библиотек? Тем более Qt можно рассматривать как отдельный язык программирования

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

> А тут адепты плюсов утверждают что С++ годиться для чего угодно

пруфлинк?

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

> По сравнению с фортраном плох

что именно в С и С++ хуже?

А что плохого в использовании библиотек?


ничего - но их кто-то должен писать, поддерживать и развивать ;)

ahonimous
()

а почему никто про D не вспомнил? сишный синтаксис, нативный компилятор, много вкусняшек и т.д.

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

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

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

> а почему никто про D не вспомнил? сишный синтаксис, нативный компилятор, много вкусняшек и т.д.

думаю не ошибусь, если скажу что по сложности D мало чем отличается от C++, но в отличии от С++ уже имеет две ветки - 1 и 2 версия, и непонятно какую стоит использовать - первая вроде как должна умереть, а вторая еще не готова( претерпевает изменения )

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

>Чем на более далёком для железа языке человек ведёт общение с комьютером, тем собственно хуже для диалога

А автор Руби считает наоборот

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


Ядро оно с железом работает. Лучше скажи где был бы сейчас веб если движки сайтов писались бы на С++

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

> Лучше скажи где был бы сейчас веб если движки сайтов писались бы на С++

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

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

Васик для идиотов

С какой стати?
Да, простой, нормальный, человекопонятный, но почему сразу для идиотов?

Поцчему поцкаль не айс

Потому что {(|)&{/}}\; - нафиг?

Си - УГ

^^см.^^ Да и нафиг себя насиловать, программируя на самом приближенном к асеблеру языке?

Си-плас-плас отстой

Согласен!

фтопку java

Всёж он лучше с/c++

Теперь моя очередь:

Васик для небольших прог.
Поцчему питон не айс?
Ruby - УГ
Фтопку си
Си-плас-плас отстой
java сойдет

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

>что именно в С и С++ хуже?

Спроси у тех кто пишет на фортране, однако фортрановые листинги есть даже в линуховом ядре

ничего - но их кто-то должен писать, поддерживать и развивать ;)


ну и пусть их кто-то пишет, поддерживает и развивает, нафиг мне заниматься велосипедостроением? У меня задачи попроще - нужно что-то посчитать, попарсить базу и тд и мне удобнее чтоб программа писалась 2 часа и считалась 20 чем чтоб писалась 20 и считалась 2 =)))

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

Scala ведь есть!


Да, но Робу Пайку выгоднее о ней умалчивать, NIH

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

> Спроси у тех кто пишет на фортране

понятно

фортрановые листинги есть даже в линуховом ядре


можно название файла?

ну и пусть их кто-то пишет, поддерживает и развивает, нафиг мне заниматься велосипедостроением?


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

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

> уже давно нет, когда С++ был «С с классами» - то да

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

все эти приемы легко реализуются и без своего препроцессора, moc используется по другим причинам

Основная причина введения moc - сигналы и слоты. Уж больно через жопу реализуются делегаты в «настоящем С++». Хотя, базару нет, реализуются, я штуки три общеупотребимых реализации сходу могу вспомнить :)

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

Туда успел пробраться Александреску. (Трагическая пауза) Язык можно хоронить...

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

А что плохого в использовании библиотек?

ничего - но их кто-то должен писать, поддерживать и развивать ;)

По теме новости: как раз у С++ и Java есть те, кто написали эти библиотеки, поддерживают их и развивают. У Go таких людей нет и неизвестно, будут ли. Соответственно, с библиотеками у него швах, и это такой жирный минус, что может перечеркнуть все плюсы.

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

Поздравляю: Вы нашли область применения (скриптовые языки), в которые C++ как раз не метит ;) Остаётся порадоваться победе в споре, бессмысленной и беспощадной :)

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

> Лучше скажи где был бы сейчас веб если движки сайтов писались бы на С++

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

trueshell ★★★★★
()

Писать можно, на чем хочешь, а ругать лучше всего то, чего не знаешь!

anonymous
()

Кто-нибудь может мне объяснить, чем Go отличается от

C + std::string + std::hash + bool + GC + {Java,D,...}_style_modules - 100500*libraries
и почему Пайк чувствует себя д'Артаньяном?

kde4-hater
()
Ответ на: комментарий от XVilka

> с каких пор лямбда-выражения стали только синтаксическим сахаром?

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

Тут следует сказать об идеологии JVM - имеется священная корова в виде спецификации .class файла. Ее трогать нельзя. Но как при этом развиваться язык? Вот и делают синтаксический сахар - который потом реализуется через невидимые программисту объекты.

Посмотрите на реализацию switch(ENUM) - и увидите, что для каждого case создается отдельный статический массив

Дженерики - реализованы через проверку в компиляторе -> чистый синтаксический сахар.

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

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

Веб-морд полно ко всяким разным приложениям. Это суть одно и то же. Полностью согласен. Зависит от задач.

trueshell ★★★★★
()
Ответ на: А после Руби... от unt1tled

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


А теперь, <цитата>Очень жизненно. Мне вспоминается недавний проект на perl, что предлагали «допилить». Люди написали в 2002м (вроде) году систему внутреннюю для использования в конторе. Ну и 8 лет пользовались, всё работало. И вот назрела необходимость добавить новые функции. Я глянул код - это жесть. Сразу сказал, что это чудо я «дорабатывать» не буду, т.к. его надо переписывать с нуля, на что сейчас у меня нет времени и желания. И ахтунгов там было начиная от функция по 1000 строк!, постоянным копи-пастом и в целом весьма убогой архитектуре, заканчивая банальными SQL-инъекциями, отутствием проверок входных данных и прочего. И объяснить человеку-менеджеру, что нужно потратить даже там в два раза больше времени, чтобы сделать не «работает», а «как правильно» - задача не из простых</цитата>

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

>> числодробилка - фортран

таки С++ тут неплох

Попробуйте в C++ задать перед выполнением операции тип округлении вверх/вниз/к ближайшему/truncate

Попробуйте задать вычисление без расширенной точности - чтобы для операций с double использовалось промежуточное представление double.

Также попробуйте получить исключение при переполнении к бесконечности/к нулю.

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

имеется священная корова в виде спецификации .class файла

Ну и дураки дурацкие, если очень хочется нужно то один раз можно. Надо Oracle когда-то совершить подвиг и форкнуть jvm и .class, оставив для совместимости старые форматы на 5 лет.

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

>Надо Oracle когда-то совершить подвиг и форкнуть jvm и .class, оставив для совместимости старые форматы на 5 лет.

Старую java похоже придется оставить навечно. Уж больно много на ней всего понаписано.

Но вот сделать Java++ было бы неплохо.

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

>Надо Oracle когда-то совершить подвиг и форкнуть jvm и .class, оставив для совместимости старые форматы на 5 лет.
Вообще-то у явы уже менялся формат .class
ЕМНИП это было с переходом на Java 1.4

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

> Также попробуйте получить исключение при переполнении к бесконечности/к нулю.

есть отличные библиотеки

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

Руби!=Перл. Перл для прог типа «написал и забыл» и то что программу не трогали с 2002го года как раз показывает верный выбор языка, Руби - для прог которые часто переписываются

DNA_Seq ★★☆☆☆
()

прочел тред

я на месте пайка постеснялся бы выставлять на посмешище такой язык — без полиморфизма

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

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

> Проблема в том, что мне нужен язык, у которого есть такая сущность как память. У явы, например, нет. У Плюсов с stl тоже ее нет

а вот отсюда поподробнее (кстати — в stl есть аллокатор)

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

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

и эту работу у тебя выполняет хэш-таблица или система репликации ?

а К.О. спешит сообщить, что бывают распределенные транзакции

www_linux_org_ru ★★★★★
()

8 страниц флуда. Вывод: программирование — это зло, несовместимость языков — два раза зло. Дотнет мог бы спасти, но он тоже зло. Может что-то в архитектуре подправить?

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

> Спроси у тех кто пишет на фортране, однако фортрановые листинги есть даже в линуховом ядре

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

аналогично по второму пункту, про линуксовое ядро. как это оно, интересно, у меня компилится без g77 в системе?

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

Нет же, сабж как раз у вас. Или анонимный иксперт только про ad-hoc знает-с?

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

И какими же языками он предлагает пользоваться?

Python

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