Здравствуйте, Sharov, Вы писали:
S>Ога и они их успешно пережели, что как бэ показательно. S>Полно библиотек-функций -- что-то такое нетривиальное сделать, получив указатель на память и параметры.
Я запутался что мы обсуждаем. Мой тезис прост: сегодня нет смысла писать новую библиотеку на C. Никто и не пишет.
S>И опять -- бд почему-то игнорируются.
Что не так с бд(база данных?)?
Здравствуйте, novitk, Вы писали:
S>>Ога и они их успешно пережели, что как бэ показательно. S>>Полно библиотек-функций -- что-то такое нетривиальное сделать, получив указатель на память и параметры. N>Я запутался что мы обсуждаем. Мой тезис прост: сегодня нет смысла писать новую библиотеку на C. Никто и не пишет.
Я могу и про "сегодня" что-нибудь поискать. Кстати, я про гит забыл.
S>>И опять -- бд почему-то игнорируются. N>Что не так с бд(база данных?)?
Ну как минимум 2 известных бд написаны на Си -- sqlite и pg. Кажется, Oracle тоже на Си (ядро, вестимо).
Ядро и набор утилит -- отличный вариант для Си (см. гит и pg как минимум, не говоря про линупс per se).
Кодом людям нужно помогать!
Re[11]: Хочется выучить такой язык программирования
Здравствуйте, CreatorCray, Вы писали:
S>>Ога и они их успешно пережели, что как бэ показательно. CC>Да просто переписывать такой объём никому не хочется.
Да просто этот код работает и делает это эффективно. Работает -- не трожь (с).
Кодом людям нужно помогать!
Re[13]: Хочется выучить такой язык программирования
Здравствуйте, Sharov, Вы писали:
S>Я могу и про "сегодня" что-нибудь поискать. Кстати, я про гит забыл.
Оригинальный автор известен очень серьезными тараканами в отношении C++.
S>Ну как минимум 2 известных бд написаны на Си -- sqlite и pg. Кажется, Oracle тоже на Си (ядро, вестимо). S>Ядро и набор утилит -- отличный вариант для Си (см. гит и pg как минимум, не говоря про линупс per se).
Опять суровое годы...
Ты в курсе, что у pg и oracle ноги растут из 80-х?
Re[14]: Хочется выучить такой язык программирования
Здравствуйте, novitk, Вы писали:
S>>Я могу и про "сегодня" что-нибудь поискать. Кстати, я про гит забыл. N>Оригинальный автор известен очень серьезными тараканами в отношении C++.
Он просто освоил инструмент, не более.
S>>Ну как минимум 2 известных бд написаны на Си -- sqlite и pg. Кажется, Oracle тоже на Си (ядро, вестимо). S>>Ядро и набор утилит -- отличный вариант для Си (см. гит и pg как минимум, не говоря про линупс per se). N>Опять суровое годы... N>Ты в курсе, что у pg и oracle ноги растут из 80-х?
Ога, и до сих пор работает. Везде.
Кодом людям нужно помогать!
Re[11]: Хочется выучить такой язык программирования
Здравствуйте, SkyDance, Вы писали:
SD>Если брать именно количество строк кода, то на том же Питоне на порядок-два больше написано (пусть это все в итоге и вызывает соответствующий код на С — даже не на С++).
На Питоне сплошная копипаста. Но я же не об этом, а о том, что С++ переживает новую волну популярности.
SD>"Новую волну" я наблюдал как обезьянничество "а вот смотрите, в гугл на С++ пишут". Этакое самоподдерживающееся пророчество, язык неподходящий для написания бизнес-логики, но в силу сложности работы в корпоративной среде (где поддерживать дополнительные языки дорого), а также в силу наличия совершенно безумных фанатов-любителей С++ (которые попросту не в состоянии осилить более современные языки), приходится пользоваться чем дают.
— Google пишет TensorFlow (Swift for TensorFlow не осилил)
— Facebook продолжает Pytorch и делает к нему полноценное C++ API
— Nvidia пишет cuDNN, TensorRT, DeepStream, Triton server
— Intel пишет OpenCV (временами не Intel), OpenVINO, oneAPI
— из старенького: MxNet и Caffe
— OpenAI пилит язык Triton
— симулятор для автопилота Carla
— быстрый инференс языковых моделей LLama
— DeepSpeech от Mozilla
— NeoML от Abbyy
Практически весь инструментарий в машинном обучении написан на С++ и позволяет себя из него использовать. Это не какие-то старые библиотеки их 90-х, а вполне современные штуки, которые начали писать уже в эру Go, и Rust, и D, и <твой любимый высокоуровневый язык>. И почему-то на С это всё тоже не написали.
SD>Не знаю, надолго ли такого запала хватит, да и знать не хочу. Но мне это выгодно — чем дольше другие пользуются каменными топорами, тем легче будет тем, кто освоил более современные орудия труда. Так что, пусть С++ и далее живет и пахнет
Он так и делает, и разрешения не спрашивает.
Re[12]: Хочется выучить такой язык программирования
Здравствуйте, Nuzhny, Вы писали:
SD>>"Новую волну" я наблюдал как обезьянничество "а вот смотрите, в гугл на С++ пишут". Этакое самоподдерживающееся пророчество, язык неподходящий для написания бизнес-логики, но в силу сложности работы в корпоративной среде (где поддерживать дополнительные языки дорого), а также в силу наличия совершенно безумных фанатов-любителей С++ (которые попросту не в состоянии осилить более современные языки), приходится пользоваться чем дают. N>- Google пишет TensorFlow (Swift for TensorFlow не осилил) N>- Facebook продолжает Pytorch и делает к нему полноценное C++ API N>- Nvidia пишет cuDNN, TensorRT, DeepStream, Triton server N>- Intel пишет OpenCV (временами не Intel), OpenVINO, oneAPI N>- из старенького: MxNet и Caffe N>- OpenAI пилит язык Triton N>- симулятор для автопилота Carla N>- быстрый инференс языковых моделей LLama N>- DeepSpeech от Mozilla N>- NeoML от Abbyy
Я бы сказал, что все это весьма специфичные вещи, которые не то чтобы для программистов рассчитаны (кроме OpenCV и похожих).
Это все скорее для людей без бэкграунда программиста, а скорее математики, физики, ds и т.п. Я думаю, что делать абстракции
типа nn.Module, nn.Linear и т.п. на Си можно, но пользоваться ими кроме самих сей будет малореально, а главное неудобно.
Тут речь идет об ОО подходе, чтобы абстракции было легко (пере)использовать. Ну и о производительности. Т.е. люди держат в уме питон,
как основной язык людей (исследователей), которые все это будут использовать, а поскольку interop C\C++ с питоном есть, то
выбор очевиден. Как-то так думаю. Ничего не мешает делать это на шарпе или яве, но как этим пользоваться в питоне без приседаний --
Т.е. это фреймворки, которые критичны к скорости (хотя все они дергают GPU), и пишутся не для программистов, соотв. массе людей нужно легко,
быстро и привычно их использовать.
Кодом людям нужно помогать!
Re[13]: Хочется выучить такой язык программирования
Здравствуйте, Sharov, Вы писали:
S>Т.е. это фреймворки, которые критичны к скорости (хотя все они дергают GPU), и пишутся не для программистов, соотв. массе людей нужно легко, S>быстро и привычно их использовать.
В целом согласен за исклюением терминов. Я бы сказал, что они пишутся для программистов, а их пользователями являются аналитики/математики/дата_ххх. Если бы тот же Pytorch делали для питонистов, то зачем версия за версией улучшают его C++ API? А его реально улучшают, делая всё полноценнее. Вполне можно не только инференс делать, но и сети обучать.
Взять TensorRT — пользователи-датасатанисты его просто подклчают и получают профит. А программисты пишут кастомные слои на C++/CUDA, внедряют в крупное ПО и т.д. Оптимизируют байтики на Nvidia Jetson'ах. Считают каждый потребляемый ватт.
Пользователи-математики работают с архитектурами сетей, публикуются, их видно и слышно. А программисты оптимизируют код, который потом дальше продукта никуда не идёт.
Re[15]: Хочется выучить такой язык программирования
Здравствуйте, Sharov, Вы писали:
N>>Оригинальный автор известен очень серьезными тараканами в отношении C++. S>Он просто освоил инструмент, не более.
Оригинальный Git был полный кластрофак — куча бинарей и скриптов на бэше. Поэтому он лет 7 на винде и не работал нормально. Hg должен был победить, но был перебит талантом и положением Торвальдса. libgit2 и прочие jgit это собственно попытка исправить созданный им бардак.
N>>Ты в курсе, что у pg и oracle ноги растут из 80-х? S>Ога, и до сих пор работает. Везде.
С чем ты споришь? Старые проекты на C естественно никто переписывать не будет, будут развивать как есть. Начинать новые тоже не будут, если мозги есть.
Re[16]: Хочется выучить такой язык программирования
Здравствуйте, novitk, Вы писали:
N>Здравствуйте, Sharov, Вы писали:
N>>>Оригинальный автор известен очень серьезными тараканами в отношении C++. S>>Он просто освоил инструмент, не более. N>Оригинальный Git был полный кластрофак — куча бинарей и скриптов на бэше. Поэтому он лет 7 на винде и не работал нормально. Hg должен был победить, но был перебит талантом и положением Торвальдса. libgit2 и прочие jgit это собственно попытка исправить созданный им бардак.
С тз deploy'я наверное, с др. стороны он кроме модели "ядро+обвязка" по сути, наверное, ничего и не знает. Монолит там какой-нибудь
или еще что. С тз функционала, он как никто знает боль распределенной разработки, поэтому его, пусть даже костыльному решению,
имеет смысл довериться. Про hg и прочие jgit ничего не знаю, но думаю талан и положение тут не причем. Скорее гитхаб сыграл
одну из решающих ролей в адаптации гита как стандарта. Выбери они не гит, ну фиг знает как сложилось бы. Значит чем-то он
им (ему, создателю gh) приглянулся.
N>>>Ты в курсе, что у pg и oracle ноги растут из 80-х? S>>Ога, и до сих пор работает. Везде. N>С чем ты споришь? Старые проекты на C естественно никто переписывать не будет, будут развивать как есть. Начинать новые тоже не будут, если мозги есть.
Я спорю с тем, что зачем переписывать то, что десятилетиями работает кроссплатформенно? Тот же pg -- дыры потихоньку латают и исправляют, добавляют
новый функционал. Зачем переписывать -- Кстати, а почему pg не на плюсах был написан, плюсы же вроде тогда были.
Кодом людям нужно помогать!
Re[17]: Хочется выучить такой язык программирования
Здравствуйте, Sharov, Вы писали:
S>С тз функционала, он как никто знает боль распределенной разработки, поэтому его, пусть даже костыльному решению, S>имеет смысл довериться.
Претензии в этом топике не к функционалу, а к средствам и организации проекта. Mало того, что взял неправильный инструмент(для подобного ява или питон на тот момент оптимальней), так еще и организовал все не по людски.
В общем, дети, не делайте так!
S>Про hg и прочие jgit ничего не знаю, но думаю талан и положение тут не причем. Скорее гитхаб сыграл S>одну из решающих ролей в адаптации гита как стандарта.
Гитхаб поставил черту, но если бы не Торвальдс эту поделку бы даже не заметили.
S>Я спорю с тем, что зачем переписывать то, что десятилетиями работает кроссплатформенно?
Кто тут предлагает что-то переписывать?
Re[18]: Хочется выучить такой язык программирования
Здравствуйте, novitk, Вы писали:
S>>С тз функционала, он как никто знает боль распределенной разработки, поэтому его, пусть даже костыльному решению, S>>имеет смысл довериться. N>Претензии в этом топике не к функционалу, а к средствам и организации проекта. Mало того, что взял неправильный инструмент(для подобного ява или питон на тот момент оптимальней), так еще и организовал все не по людски. N>В общем, дети, не делайте так!
Что не так с инструментом, если на нем даже ОС написана? О каком питоне речь, если надо сравнивать (большие)
файлы? Ладно ява, еще куда ни шло. Но речь о настоящем кроссплатформенном ПО, скачал и используй, без лишний
приседаний.
S>>Про hg и прочие jgit ничего не знаю, но думаю талан и положение тут не причем. Скорее гитхаб сыграл S>>одну из решающих ролей в адаптации гита как стандарта. N>Гитхаб поставил черту, но если бы не Торвальдс эту поделку бы даже не заметили.
Все кругом виноваты. Хотя спору нет, гит крайне сложен и непрост.
S>>Я спорю с тем, что зачем переписывать то, что десятилетиями работает кроссплатформенно? N>Кто тут предлагает что-то переписывать?
К чему эти отсылки, что софт написан в 80-е года? В этом мощь Си -- можно делать на века. И язык
простой для освоения.
Кодом людям нужно помогать!
Re[2]: Хочется выучить такой язык программирования
Здравствуйте, Mihal9, Вы писали:
M>Хочется выучить такой язык программирования, по которому пока мало специалистов, но у которого большое будущее. Почему Clojure?
Здравствуйте, Privalov, Вы писали:
S>>2)Что может быть более кроссплатформенное, чем Си? P>Стандартный Фортран, разумеется.
На практике — очень давно нет
Здравствуйте, CreatorCray, Вы писали:
CC>На практике — очень давно нет
Значит, и до Фортрана добрались. Когда я с ним плотно работал, никаких проблем с переносом на разные платформы не возникало. Разве что сегменты в MS DOS. Куда катится мир...
Re[19]: Хочется выучить такой язык программирования
Здравствуйте, Sharov, Вы писали:
S>Что не так с инструментом, если на нем даже ОС написана?
Нифига у тебя аргументы! Про "гвозди микроскопом" не слышал?
S>О каком питоне речь, если надо сравнивать (большие) S>файлы? Ладно ява, еще куда ни шло. Но речь о настоящем кроссплатформенном ПО, скачал и используй, без лишний S>приседаний.
Для справки конкурент Hg был написан на Py. На скорость и портативность никто не жаловался. В отличие от Гит! Где портативности не было лет 7, так как использовались не python, a гребанный shell script.
Как сравнить файлы на питоне быстро.
S>К чему эти отсылки, что софт написан в 80-е года? В этом мощь Си -- можно делать на века. И язык S>простой для освоения.
Как и Кобол. Это не делает его оптимальным для использования в 2023.