Здравствуйте, _ilya_, Вы писали:
B>>Хочу повторить эти ощущения и заодно выучить что-то полезное.[/b] __>Не думаю что машинный код / ассемблер будет хорошим уроком. Если было не понятно, что все языки +- одно и тоже.
У меня 15 лет опыта С++. Странно было бы при этом не знать ассемблер.
Проект Ребенок8020 — пошаговый гайд как сделать, вырастить и воспитать ребенка.
Здравствуйте, Basil2, Вы писали:
B>Я неудачно выразился. Правильно сказать так: синтаксис Go слишком похож на С, из-за чего он выглядит как С со свистоперделками. Тогда как синтаксис Rust на С не похож, из-за чего выглядит значительно более целостным.
Да 100500 языков похожи синтаксисом на C, это говорит скорее о его изначальном удобстве и большой универсальности.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Здравствуйте, Basil2, Вы писали:
B>В молодости случайно купил книжку по Forth и получил огромное удовольствие от его изучения. Необычный, минималистичный, расширяемый — на фоне Pascal и Basic это было очень интересно. Но поработать с ним к сожалению не пришлось.
B>А некоторое время назад на работе решили писать тесты на C#. Начал изучать и также получил огромное удовольствие. Было очень приятно увидеть, как красиво обыграли многие неудачные моменты C++. (Правда, от этой идеи быстро отказались, и так я его и не изучил). https://ziglang.org/
B>Хочу повторить эти ощущения и заодно выучить что-то полезное. Основной язык сейчас C++, также иногда использую Python, JavaScript, LUA. Чтобы такого изучить? Желательно, чтобы это потом пригодилось, а в идеале чтобы еще найти работу удаленно.
Дык у вас уже всё есть, кроме php и perl-а и tcl.
lua уже пользовались посмотрите http://terralang.org/
B>Основные кандидаты сейчас это F# и Rust. F# — потому что название напоминает Forth Ну и это функциональный язык, т.е. несколько другая концепция чем у С++ — как в свое время другая концепция была у Forth. Опять же функции мне кажется должны чем-то напоминать слова у Forth.
для разнообразия VHDL
B>Rust — потому что он позиционируется как замена С++. То есть я рассчитываю на тот же эффект, что был при изучении C#. Ну и жалко свой многолетний опыт по С++, а в Rust он вроде бы пригодится. И еще мне кажется, что Rust можно выучить. Про С++ я к сожалению понял, что он уже не умещается в моей голове. Стандарт С++11 внес много хороших плюшек, но после 14 и 17 стало понятно, что вещей к изучению там море. А я люблю понимать, что знаю язык от и до, но это не про плюсы
B>Что скажете?
D и Rust не взлетит.
Здравствуйте, Basil2, Вы писали:
B>Rust — потому что он позиционируется как замена С++.
Да, хорошая штука. B>Что скажете?
Если прямо изучить что-то новое, то OCaml попробуй. Хаскел более хардкорен, а окамл не особо.
Здравствуйте, Basil2, Вы писали:
B>Я бы сказал что Rust это как будто из С снова делают С++, только с учетом опыта делания С++. B>Я думал о Go, но что-то он совсем не глянулся. С одной стороны странноватый синтаксис, с другой — все тоже самое как в С++. В Расте все же виден некий стержень, вокруг которого все делается.
В Расте народ борется с ветряными мельницами, по большому счету, вот и весь стержень. Управление памятью в C++ уже много лет как не проблема вот прям совсем, но по старой памяти многие используют эту страшилку до сих пор.
Здравствуйте, Basil2, Вы писали:
B>В молодости случайно купил книжку по Forth и получил огромное удовольствие от его изучения. Необычный, минималистичный, расширяемый — на фоне Pascal и Basic это было очень интересно. Но поработать с ним к сожалению не пришлось.
B>А некоторое время назад на работе решили писать тесты на C#. Начал изучать и также получил огромное удовольствие. Было очень приятно увидеть, как красиво обыграли многие неудачные моменты C++. (Правда, от этой идеи быстро отказались, и так я его и не изучил).
B>Хочу повторить эти ощущения и заодно выучить что-то полезное. Основной язык сейчас C++, также иногда использую Python, JavaScript, LUA. Чтобы такого изучить? Желательно, чтобы это потом пригодилось, а в идеале чтобы еще найти работу удаленно.
B>Основные кандидаты сейчас это F# и Rust. F# — потому что название напоминает Forth Ну и это функциональный язык, т.е. несколько другая концепция чем у С++ — как в свое время другая концепция была у Forth. Опять же функции мне кажется должны чем-то напоминать слова у Forth.
B>Rust — потому что он позиционируется как замена С++. То есть я рассчитываю на тот же эффект, что был при изучении C#. Ну и жалко свой многолетний опыт по С++, а в Rust он вроде бы пригодится. И еще мне кажется, что Rust можно выучить. Про С++ я к сожалению понял, что он уже не умещается в моей голове. Стандарт С++11 внес много хороших плюшек, но после 14 и 17 стало понятно, что вещей к изучению там море. А я люблю понимать, что знаю язык от и до, но это не про плюсы
B>Что скажете?
Здравствуйте, уважаемый Basil2, Вы писали:
...
B>Rust — потому что он позиционируется как замена С++.
Не уверен что это именно так. Возможно — Вы выдаёте желаемое за действительное
B>То есть я рассчитываю на тот же эффект, что был при изучении C#.
Невозможно дважды войти в одну и ту же реку. (Гераклит, 500 лет до н.э.).
Начнём с того, что более 15 лет назад, когда мы изучали .NET вообще и C# в частности, всё было другое. Да и мы моложе
B>Ну и жалко свой многолетний опыт по С++, а в Rust он вроде бы пригодится. И еще мне кажется, что Rust можно выучить. Про С++ я к сожалению понял, что он уже не умещается в моей голове.
Вы, уважаемый Basil2, в этом не одиноки.
Не только многие разработчтики (в том числе и я), подпишутся под этими словами, но и сам автор C++ многоуважаемый господин Бьёрн Страуструп.
B>Стандарт С++11 внес много хороших плюшек, но после 14 и 17 стало понятно, что вещей к изучению там море.
+100500
Да, после выхода стандарта 2011 года — можно сказать, что новый C++ это другой язык...
И именно это — подогревает интерес к изучению и освоению новых возможностей языка!
B>А я люблю понимать, что знаю язык от и до, но это не про плюсы B>Что скажете?
Изучать именно C++ углубить своё понимание в нём.
По проинцыпу:
Новое — это хорошо забытое старое
P.S. Ни один язык не удасться узучить как Вы пишите "знаю_язык_от_и_до"
Так, например, я думал, что знаю обычный ANSI C от и до.
Что уже более 20 лет (двадцати лет) как его знаю...
Но вот решил я изучить UNIX/Linux — как программист.
Приобрел вот такие книжки:
1) Advanced Programming in the UNIX® Environment, Third Edition: http://www.apuebook.com/apue3e.html
2) The Linux Programming Interface: http://man7.org/tlpi
Там — всё на классическом ANSI C.
Изучая их я понял, что в обычном Си я многого чего не знаю
Здравствуйте, kaa.python, Вы писали:
KP>В Расте народ борется с ветряными мельницами, по большому счету, вот и весь стержень. Управление памятью в C++ уже много лет как не проблема вот прям совсем, но по старой памяти многие используют эту страшилку до сих пор.
As we’ve seen, roughly 70% of the security issues that the MSRC assigns a CVE to are memory safety issues. This means that if that software had been written in Rust, 70% of these security issues would most likely have been eliminated. And we’re not the only company to have reported such findings.
Здравствуйте, Basil2, Вы писали:
B>Желательно, чтобы это потом пригодилось, а в идеале чтобы еще найти работу удаленно. B>Основные кандидаты сейчас это F# и Rust.
As we’ve seen, roughly 70% of the security issues that the MSRC assigns a CVE to are memory safety issues. This means that if that software had been written in Rust, 70% of these security issues would most likely have been eliminated. And we’re not the only company to have reported such findings.
Отличный пример жонглирования фактами. Обычно именно так и выглядят попытки доказать что в C++ с управлением памятью всё плохо до сих пор. А ведь надо совсем чуть-чуть: объединить Си с C++ и навалить сверху проектов возраста говна мамонта, как C++ становиться магическим образом опасным. При этом, если проект изначально C++11 и написан на C++, а не Си-с-классами, то проблем с памятью, почему-то нет. Это я не к тому, что C++ прекрасный и безопасный язык, а к тому, что проблем с памятью в современном C++ (11 и выше) не сильно больше чем в любом другом не-функциональном языке, будь то Java или Go.
Здравствуйте, D. Mon, Вы писали:
DM>Здравствуйте, Basil2, Вы писали:
B>>Желательно, чтобы это потом пригодилось, а в идеале чтобы еще найти работу удаленно. B>>Основные кандидаты сейчас это F# и Rust.
А зачем, собственно говоря, учить то, что знает каждая собака? Входить на рынок надо когда спрос только зарождается.
Здравствуйте, kaa.python, Вы писали:
DM>>https://msrc-blog.microsoft.com/2019/07/22/why-rust-for-safe-systems-programming/
KP>Отличный пример жонглирования фактами. Обычно именно так и выглядят попытки доказать что в C++ с управлением памятью всё плохо до сих пор. А ведь надо совсем чуть-чуть: объединить Си с C++ и навалить сверху проектов возраста говна мамонта, как C++ становиться магическим образом опасным. При этом, если проект изначально C++11 и написан на C++, а не Си-с-классами, то проблем с памятью, почему-то нет.
Ну так большинство реальных проектов относятся к первой группе. Все просто. Говна мамонтов много, а новых проектов на новом С++ очень мало, это вырождающаяся ниша.
Здравствуйте, D. Mon, Вы писали:
DM>Ну так большинство реальных проектов относятся к первой группе. Все просто. Говна мамонтов много, а новых проектов на новом С++ очень мало, это вырождающаяся ниша.
Ну а зачем же ты тогда споришь с тем, что современный C++ дает достаточно инструментов для безопасной работы с памятью? Что бы проект стал безопасным на Rust — его надо на него полностью переписать с нуля. Ну а в случае с C++ достаточно постепенно перевести кодовую базу в соответствие с современными стандартами, что как минимум ощутимо дешевле.
Здравствуйте, kaa.python, Вы писали:
KP>Здравствуйте, D. Mon, Вы писали:
DM>>Ну так большинство реальных проектов относятся к первой группе. Все просто. Говна мамонтов много, а новых проектов на новом С++ очень мало, это вырождающаяся ниша.
KP>Ну а зачем же ты тогда споришь с тем, что современный C++ дает достаточно инструментов для безопасной работы с памятью? Что бы проект стал безопасным на Rust — его надо на него полностью переписать с нуля. Ну а в случае с C++ достаточно постепенно перевести кодовую базу в соответствие с современными стандартами, что как минимум ощутимо дешевле.
Здравствуйте, Poopy Joe, Вы писали:
PJ>А зачем, собственно говоря, учить то, что знает каждая собака? Входить на рынок надо когда спрос только зарождается.
Есть 9 ларьков с хот-догами. Поставишь рядом десятый — получишь стабильную прибыль. Начнёшь торговать шаурмой — разоришься. Не?
Здравствуйте, bnk, Вы писали:
bnk>Здравствуйте, Poopy Joe, Вы писали:
PJ>>А зачем, собственно говоря, учить то, что знает каждая собака? Входить на рынок надо когда спрос только зарождается.
bnk>Есть 9 ларьков с хот-догами. Поставишь рядом десятый — получишь стабильную прибыль. Начнёшь торговать шаурмой — разоришься. Не?
Не факт, что стабильную и уж точно небольшую, скорее всего у соседей уже есть лояльные клиенты и больше опыта. А на шаурме можно и подняться. Но можно и разорится, да. Это вопрос оценки, что открывать. Шаурму или молочный ларек.
Здравствуйте, D. Mon, Вы писали:
DM>Ну так большинство реальных проектов относятся к первой группе. Все просто. Говна мамонтов много, а новых проектов на новом С++ очень мало, это вырождающаяся ниша.
Где-то дорабатываю старые проекты, чтобы вывести их из состояния "г/м", где-то разрабатывают новые.
Ну а кое-где жалостливо всхлипывают:
-Ну C++ это же вырождающаяся ниша Жалко программистов, оставшихся в ней и т.д. и т.п.
P.S. Я не спорю, что разработка нового пректа — в разы интереснее, нежели копание в старом "г/м", но тем не менее, факт наличия старых (нуждающихся в рефакторинге) проектов —
также способствует появлению новых рабочих мест!