Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Arsen.Shnurkov  
Дата: 05.08.16 14:28
Оценка: :))) :)
Собственно, сборка мусора в Rust есть (опционально), а такого мощного статического анализатора в C# нет.
Re: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Arsen.Shnurkov  
Дата: 05.08.16 15:53
Оценка: :))) :))
Sinix — ну вот что ты улыбаешься? Сам же присылал ссылки на статьи, где сказано, что сборщик мусора от MS неприемлем для Web-проектов. А в расте такие проблемы можно избежать.
Десктоп умер, теперь облака и мобильники. И там и там — дорога расту. (На мобильниках — Redox, Robigalia )
Re: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: velkin Земля  
Дата: 05.08.16 16:15
Оценка: +8 :))
Здравствуйте, Arsen.Shnurkov, Вы писали:

AS>Собственно, сборка мусора в Rust есть (опционально), а такого мощного статического анализатора в C# нет.


Всё будет убито сиплюсплюсом.
Re: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: vsb Казахстан  
Дата: 05.08.16 16:16
Оценка: +1 -1
Rust слишком сложный язык, чтобы занять сколь-нибудь значимую долю на рынке, не говоря уже о том, чтобы убить Java.
Re[2]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Arsen.Shnurkov  
Дата: 05.08.16 16:20
Оценка: -3
V>Всё будет убито сиплюсплюсом.

Это ненадолго. Да сейчас есть небольшой прогресс с Qt, но поскольку десктоп умирает целиком, то Qt умрёт вместе с WPF.

JavaScript поверх Rust в Web, JavaScript вместо bash на серверах — вот наше будущее. А Rust выдавит .Net вместе с питоном.
Re[3]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: velkin Земля  
Дата: 05.08.16 16:24
Оценка:
Здравствуйте, Arsen.Shnurkov, Вы писали:

AS>Это ненадолго. Да сейчас есть небольшой прогресс с Qt, но поскольку десктоп умирает целиком, то Qt умрёт вместе с WPF.


Я говорю всё будет убито сиплюсплюсом, а кьют это лишь одна из библиотек в парадигме ООП.
Отредактировано 05.08.2016 16:25 velkin . Предыдущая версия .
Re[4]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Arsen.Shnurkov  
Дата: 05.08.16 16:39
Оценка: -2 :)
V> а кьют это лишь одна из библиотек

А больше C++ ни для чего не используется. Во всех остальных местах python и web.
Это как фортран/кобол — остались редкие штучные специалисты вроде тебя,
а новые программисты C++ учить уже не будут.
Re[5]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: velkin Земля  
Дата: 05.08.16 18:24
Оценка: 3 (1) +3
Здравствуйте, Arsen.Shnurkov, Вы писали:

V>> а кьют это лишь одна из библиотек


AS>А больше C++ ни для чего не используется. Во всех остальных местах python и web.


Как говаривал Страуструп, что он не будет заострять внимание на Си, так как те кто знают C++ легче переходят на него, чем наоборот. Имея связку C/C++ мы получаем абсолютно подавляющее превосходство над всеми языками. В наличии доступно четыре парадигмы:

1)с процедурное программирование
2)и функциональное программирование
3)+ объектно-ориентированное программирование
4)+ обобщённое программирование (шаблоны C++)


В итоге C/C++ это драйвера, серверы, прикладные приложения, игры, CAD и многое другое. Взять тот же web, на чём он базируется? А базируется он на серверах. На чём написаны сервера? На C/C++.

Причём не смотря на использование Си, парадигма обобщённого программирования C++ способна его полностью заменить без какой-либо потери быстродействия. Живучесть C/C++ банальна и основывается на том, что так уж получилось, что эти языки стали основой для всего остального.

Я, кстати, не агитирую всё бросать и срочно начинать учить C++, мне и самому лень. Но вот чисто для примера:

1) базы данных
SQLite Си
MySQL C/C++
PostgreSQL Си

2) веб-сервера
Apache Си
Nginx Си
Lighttpd Си
IIS C++

И так куда ни кинь, ну пусть:

3) прикладные приложения
Qt C++
GTK+ Си
WxWidgets C++

Можно очень долго перечислять, начиная с библиотек и заканчивая огромным множеством программ. Чтобы убить C/C++ придётся разрушить фундамент на котором строится современное ПО, так как это и есть сам фундамент. Скажу даже более, если стереть все программы, которые используют C/C++ компьютеры вообще не будут работать, просто потому, что там нечему и не на чем будет работать. А если стереть какой-нибудь python, java, php и прочее, то ситуация будет хоть и крайне неприятной, но не столь плачевной.

AS>Это как фортран/кобол — остались редкие штучные специалисты вроде тебя,


Было бы хорошо, если бы я действительно был специалистом в C++. Но к слову не вижу программ на фортране и коболе, а на C/C++ их просто море. Причём те которые на Си для меня не сказал бы что особо отличимы от тех, которые на C++. Я скорее вижу различие парадигм и элементы, которые есть только в C++, но нет в Си.

AS>а новые программисты C++ учить уже не будут.


Это их дело, вон некоторые уже давно утверждают, что в будущем компьютеры будут сами себя программировать, а программисты станут не нужны.
Re[2]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Sinix  
Дата: 05.08.16 19:25
Оценка: 2 (1) +1
Здравствуйте, Arsen.Shnurkov, Вы писали:

AS>Sinix — ну вот что ты улыбаешься?

Глубине анализа и неопровержимости аргументов

AS>Сам же присылал ссылки на статьи, где сказано, что сборщик мусора от MS неприемлем для Web-проектов.

Эмм??? А можно ссылочку?

Что-то не припоминаю ничего. Может быть, про войну с GC в kestrel? Которая следствие решения сделать критичную часть API поверх генерик-интерфейсов коллекций (IDictionary который). И вылезает оно при не совсем типичных нагрузках, в районе 10e6 RPS.

Если не считать правильный способ — просто использовать свою коллекцию с структурой-итератором — то решений для этой экзотики есть как минимум четыре.
* stackalloc (идеальное по затраты / выигрыш).
* soft-realtime GC (в недрах MS research похоронены как минимум три реализации (а всего CIL-совместимых реализаций GC, по слухам, несколько десятков), ссылки на исследовательские pdf-ки, если надо, поищу).
* hot-path recompilation с агрессивным инлайнингом (заготовки тоже можно позаимствовать у JS team всё того же MS research).
* .net native, который по производительности сможет вплотную приблизиться к плюсам (и по времени компиляции — тоже).


AS>Десктоп умер, теперь облака и мобильники. И там и там — дорога расту. (На мобильниках — Redox, Robigalia )

Ребят, вам не надоедает? Буквально каждые три-четыре месяца кто-то торжественно объявляет новый закапыватель для %подставить_язык%. На практике, правда, про закапывателя уже через год никто не вспоминает, даже сами агитаторы за.

Единственное, что с натяжкой можно назвать выстрелившим за последние лет десять — TypeScript. И то только потому, что необходимость подобной штуки была очевидна, а конкуренты как-то умудрились забить на совместимость с JS.
Re[6]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: r.kamenskiy Россия  
Дата: 05.08.16 20:20
Оценка: +2 -2 :)))
Здравствуйте, velkin, Вы писали:

V>Я, кстати, не агитирую всё бросать и срочно начинать учить C++, мне и самому лень. Но вот чисто для примера:


А есть примеры приложений написаных не во времена, когда и выбора то особо не было?
Ну серьезно. mysql — 21 год, postgresql — 20 лет.

Не вижу причин сейчас начинать новый проект на C++
Re[7]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Arsen.Shnurkov  
Дата: 05.08.16 20:36
Оценка: :)
RK> Не вижу причин сейчас начинать новый проект на C++

да! Rust рождён для GPU ! Именно с переносом на GPU рендеринга HTML удалось разогнать браузерный движок рендеринга Servo.
Re[7]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: so5team https://stiffstream.com
Дата: 06.08.16 12:59
Оценка: +1
Здравствуйте, r.kamenskiy, Вы писали:

RK>А есть примеры приложений написаных не во времена, когда и выбора то особо не было?


MongoDB, RethinkDB, ScyllaDB, ClickHouse

RK>Не вижу причин сейчас начинать новый проект на C++


Ну т.е. совсем никаких причин вне зависимости от предметной области, требований, сроков, бюджетов, имеющихся наработок и пр. сопутствующих условий?
Re[8]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: r.kamenskiy Россия  
Дата: 06.08.16 13:29
Оценка:
Здравствуйте, so5team, Вы писали:

S>Ну т.е. совсем никаких причин вне зависимости от предметной области, требований, сроков, бюджетов, имеющихся наработок и пр. сопутствующих условий?


Ну понятно, что если других вариантов нет, кроме плюсов — то выбирать не придется. Здесь же подразумевалось, что если есть выбор, то выбран будет не с++
Re[9]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: so5team https://stiffstream.com
Дата: 06.08.16 13:41
Оценка: +2
Здравствуйте, r.kamenskiy, Вы писали:

S>>Ну т.е. совсем никаких причин вне зависимости от предметной области, требований, сроков, бюджетов, имеющихся наработок и пр. сопутствующих условий?


RK>Ну понятно, что если других вариантов нет, кроме плюсов — то выбирать не придется. Здесь же подразумевалось, что если есть выбор, то выбран будет не с++


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

Давайте сделаем еще одну попытку: когда лично вы сделаете для себя вывод о том, что "других вариантов" нет? По каким критериям вы определяете "Ну понятно"?
Re[10]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: r.kamenskiy Россия  
Дата: 06.08.16 14:26
Оценка:
Здравствуйте, so5team, Вы писали:

S>Началось все с "Не вижу причин сейчас начинать новый проект на C++", а пришло к "если других вариантов нет, кроме плюсов — то выбирать не придется".


Ну вроде очевидно, что если выбора нет — то его просто нет. Бывает, что нет выбора и писать нужно на Fortran. И это не отменяет того, что в общем случае я не вижу причин начинать новый проект на Fortran

S>Давайте сделаем еще одну попытку: когда лично вы сделаете для себя вывод о том, что "других вариантов" нет? По каким критериям вы определяете "Ну понятно"?


— embedded
— драйвера

Здесь обычно выбор между ассембелом и C/C++
Re[11]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: so5team https://stiffstream.com
Дата: 06.08.16 14:37
Оценка: +2
Здравствуйте, r.kamenskiy, Вы писали:

RK>Ну вроде очевидно, что если выбора нет — то его просто нет.


По-моему, очевидно, что отсутствие выбора -- это вполне себе причина. Вы эту причину одновременно и признаете, и не видите. Как так?

S>>Давайте сделаем еще одну попытку: когда лично вы сделаете для себя вывод о том, что "других вариантов" нет? По каким критериям вы определяете "Ну понятно"?


RK>- embedded

RK>- драйвера

RK>Здесь обычно выбор между ассембелом и C/C++


Выше по ветке были приведены примеры приложений, разработанных на C++, которые ни в коем разе не относятся ни к embedded, ни к драйверам. Тем не менее, выбор C++ для них выглядит более адекватным, чем выбор каких-то других языков.
Re[8]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Evgeny.Panasyuk Россия  
Дата: 06.08.16 15:36
Оценка: +2
Здравствуйте, so5team, Вы писали:

RK>>А есть примеры приложений написаных не во времена, когда и выбора то особо не было?

S>MongoDB, RethinkDB, ScyllaDB, ClickHouse

Пример из другой области — Facebook Moments:


There are many alternatives for sharing code between mobile platforms. We wanted to optimize for fast iteration, app performance, and native look and feel. After weighing the alternatives, we chose to write the UI in platform-specific code and the business logic in shared code using C++. Traditionally, C++ is known for providing high performance while lacking easy memory management and higher-level abstractions. However, using modern C++11 features such as std::shared_ptr reference counting, lambda functions, and auto variable declarations, we were able to quickly implement highly performant, memory-safe code.

Цитата из недр того же Facebook:

"The going word at Facebook is that 'reasonably written C++ code just runs fast,' which underscores the enormous effort spent at optimizing PHP and Java code. Paradoxically, C++ code is more difficult to write than in other languages, but efficient code is a lot easier [to write in C++ than in other languages]." – Herb Sutter at //build/, quoting Andrei Alexandrescu

Re: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: SI_16  
Дата: 06.08.16 20:05
Оценка: +2
Здравствуйте, Arsen.Shnurkov, Вы писали:

AS>сборка мусора в Rust есть (опционально)

Нет, такой опции на сегодняшний день нет.
Re[7]: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: Denwer Россия  
Дата: 07.08.16 15:08
Оценка: 6 (4) +2
Здравствуйте, r.kamenskiy, Вы писали:

RK>Не вижу причин сейчас начинать новый проект на C++


Мы свой проект сделали на С++(использовали Qt), конкуренты на Java. Теперь клиенты плюются на их софт, тормозной и жрущий память. А времени и денег влито уже очень много, что бы взять и переписать заново на с++. Причем они то думали что на жабе у них реальная кросплатформенность получится, а как оказалось нужен мощный комп и про всякие планшеты можно забыть. А у нас без проблем на слабом железе не просто работает, а летает.
Re: Да ну и фиг с этой Java-ой. .Net будет убит Rust-ом
От: DreamMaker  
Дата: 07.08.16 18:09
Оценка:
Здравствуйте, Arsen.Shnurkov, Вы писали:


а не заржавеет?


AS>Собственно, сборка мусора в Rust есть (опционально), а такого мощного статического анализатора в C# нет.



суперстатический анализатор — даешь код, а он говорит: "ваш код — говно!", и он прав...
In P=NP we trust.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.