раст без стандартной библиотеки не очень-то и раст, не?
Что значит «не очень-то и раст», лол? Rust, как и любой другой язык без стандартной библиотеки, умеет только базовые вещи. Borrow checker, pattern matching, система типажей и прочие прелести, за которые мы его любим, в этих базовых вещах есть.
This feature is technically stable, but there are some caveats. For one, you can build a #no_std library on stable, but not a binary. For details on binaries without the standard library, see the nightly chapter on ‘lang items’
In order to build a #[no_std] executable we will need libc as a dependency.
У Go вот одна реализация, и ему это почему-то никак не мешает.
Что такое «не мешает»? Быть позади Питона и JS по популярности? Нет, не мешает.
Я хочу услушать аргумент почему вдруг множественные (актуальные) реализации каким-то образом должны о чем-то свидетельствовать.
Аргумент очень простой: общие правила игры плюс свободная конкуренция приводят к появлению более оптимальных технических решений и улучшению качества продукта. Нет, можно, конечно и внутри монополии кпсс’ными методами создавать свой собственный и неповторимый ЯП для своей же, залоченной на самой себя и огороженной от всего остального мира инфраструктуре. Но для этого нужно быть корпорацией уровня Apple. Так что если Rust - это такой ЯП, ну тогда ОК.
Что такое «не мешает»? Быть позади Питона и JS по популярности? Нет, не мешает.
Эм… А ничего, что веб-программистов на JS тупо больше? А питон вообще скриптовый язык.
Аргумент очень простой: общие правила игры плюс свободная конкуренция приводят к появлению более оптимальных технических решений и улучшению качества продукта. Нет, можно, конечно и внутри монополии кпсс’ными методами создавать свой собственный и неповторимый ЯП для своей же, залоченной на самой себя и огороженной от всего остального мира инфраструктуре. Но для этого нужно быть корпорацией уровня Apple. Так что если Rust - это такой ЯП, ну тогда ОК.
Ну вот как-то у Go их всего две и одна из них маргинальная. А язык, между прочим, один из самых используемых. Наверное, все-таки, в твоей логической цепочке что-то не так. Ещё Perl можем вспомнить. Ну и Python, раз уж заговорили, формальной спеки не имеет.
Эм… А ничего, что веб-программистов на JS тупо больше?
Мой поинт как раз в этом.
А питон вообще скриптовый язык.
Ну посмотри на компилируемые языки из топ 10 популярных. Если там даже Swift затесался, то Rust же вроде как не про то, не про корпоративный контроль и огораживание, не? C, С++, даже у C# есть другая реализация, mono, т.e. если чуть-чуть более демократичная среда, чем в ГУЛАГ’e (а MS, напоминаю, выросла на открытой архитектуре IBM PC), то независимые реализации пробиваются в жизнь, как ландыши сквозь апрельский туман (ну или как лопухи сквозь навозную кучу - кому как нравится).
Rust просто не очень весу набрал и (пока) мало кому нужен, что, в общем-тo, очевидные вещи.
В том, что язык, не предназначенный для веба, не используется в вебе?
Ну посмотри на компилируемые языки из топ 10 популярных. Если там даже Swift затесался, то Rust же вроде как не про то, не про корпоративный контроль и огораживание, не?
Нет конечно.
C, С++, даже у C# есть другая реализация, mono, т.e. если чуть-чуть более демократичная среда, чем в ГУЛАГ’e (а MS, напоминаю, выросла на открытой архитектуре IBM PC), то независимые реализации пробиваются в жизнь, как ландыши сквозь апрельский туман (ну или как лопухи сквозь навозную кучу - кому как нравится).
Я тебе напомню, что C/C++ имеют разные реализации, потому что в 70-х/80-х у каждого универа был свой дистрибутив UNIX. Со своим компилятором. И своим софтом. А потом появился Microsoft, где тоже был свой компилятор C.
У C# есть свободная реализация, потому что он выходил под проприетарной.
А вот зачем Rust’у вторая реализация я в упор не вижу.
Я тебе напомню, что C/C++ имеют разные реализации, потому что в 70-х у каждого универа был свой дистрибутив UNIX.
Вот именно! Интерес к UNIX был огромный - вот и появились разные реализации, каждый, кто мог, начал делать свой UNIX, появился зоопарк, который надо было как-то приводить к общему знаменателю, и появились стандарты UNIX, ну и соответственно стандарт C. А не нужен был бы UNIX бизнесу - так бы и остался исследовательско-студенческой поделкой от AT&Т или Беркли. И фрики, его пилящие с важным видом говорили бы, а нафига что-то другое делать, ведь вот мы уже в своей поделке все сделали - только портируй ее на свою архитектуру :)
Наверное потому, что когда у тебя есть двадцать миллионов строк на Java, у тебя выбора особо уже нет.
Это так. Но ведь и эти многомилионнострочные системы на Java имели своих предшественников на других ЯП, но таки были переписаны (ну или просто спроектированы новые системы под новые ТЗ - не суть важно). Т.e. настал такой момент, когда затраты на переписывание и/или замещение новыми системами окупились преимуществами Java. Вот такой момент и для Rust должен наступить, если он обладает решающими преимуществами перед «legacy-языками».
Если нашлись у заинтересованных сторон ресурсы на реализацию своих (в т.ч. закрытых) JVM, то почему бы подобным ресурсам не найтись в среде тех, кому очень нужен Rust, но по каким-то причинам не устраивает LLVM?
Вот именно! Интерес к UNIX был огромный - вот и появились разные реализации, каждый, кто мог, начал делать свой UNIX, появился зоопарк, который надо было как-то приводить к общему знаменателю, и появились стандарты UNIX, ну и соответственно стандарт C.
Все было чуть более прозаично – не было нормальных распределенных SCM и нормального Интернета.
А не нужен был бы UNIX бизнесу - так бы и остался исследовательско-студенческой поделкой от AT&Т или Беркли. И фрики, его пилящие с важным видом говорили бы, а нафига что-то другое делать, ведь вот мы уже в своей поделке все сделали - только портируй ее на свою архитектуру :)
Ну вот только когда появился коммерческий UNIX, его почему-то сразу анально огородили %)
Если нашлись у заинтересованных сторон ресурсы на реализацию своих (в т.ч. закрытых) JVM, то почему бы подобным ресурсам не найтись в среде тех, кому очень нужен Rust, но по каким-то причинам не устраивает LLVM?
Потому что, пока что, LLVM устраивает всех. А если LLVM не будет кого-то устраивать, то проще запилить возможность альтернативного бекенда в Rust, чем форкать все.
речь собсна о том, как часто и в каких ситуациях гражданин должен предъявлять паспорт, документы об образовании, свидетельство о браке и метрики о рождении детей.
есть мнение, что проверка документов должна быть ситуативно обоснованной.
другая точка зрения заключается в том, что при любых контактах с внешним миром гражданин обязан предъявлять исчерпывающий набор документов, справок и письменных разрешений. при совершении покупок в магазине, на парковке, перед тем как перейти дорогу на зеленый сигнал светофора и походом в сортир. перед ним немедленно должен из воздуха материализоваться проверяющий с горящими глазами и грозным окриком «обоснуй!».
ничего не имею против людей исповедующих вторую точку зрения, но лично мне их позиция представляется параноидальной, недальновидной и в создающей чрезвычайные неудобства в повседневном практическом применении.