но… нифига! для ублажения своего эстетического вкуса это можно сделать. но остальной веб, с миллионами жутких генераторов флуда в сети, это никак не изменит.
Согласен, но это никак не является тем путём, который для меня приемлем.
Каждый человек ценен, но многие из них выбирают путь угождения своему Я, а не служения другим.
Понятно, что никакой благодарности от людей ждать не стоит, так как мир весьма духовно болен и развращён.
Многие и не понимаю даже этого и думают, что если у них: красивая жена, машина, …, куча денег, …, то они счастливо прожили жизнь.
Это враньё, которое произрастает от того, что многие из людей духовные калеки и просто не понимают этого.
Это вопросы духовности людей, которые нет смысла обсуждать на этом форуме.
В первую очередь если чего-то нехватает мне, либо важно для других.
Проекты не особо масштабные, но сложные, кто-то бы сказал что невозможные.
Идеи зарождаются когда и где попало. Часто, это чужие идеи, но улучшеные.
Для меня важен процесс. Например недавно потратил несколько дней на написание программы, которая при старте делает exit (3 машинных инструкции). Был очень доволен.
Когда нужно писать программу для какой-то цели, это у меня удовольствия не вызывает. Это рутина, работа.
Я люблю писать программы, когда цели, как таковой, нет. Или она есть чисто в теории, но очевидно, что я её не достигну. К примеру у меня в планах написать программу, которая загружает данные в S3. Программа должна быть написана на C без зависимостей (включая libc). Это значит, что в ней должны быть реализованы: асинхронный ввод-вывод (для многопоточной загрузки больших объектов), криптографические алгоритмы и TLS протокол, HTTP протокол. В принципе объём тут на год работы и очевидно, что я это никогда не сделаю, запала у меня не хватит, но это не важно, важно получаемое удовольствие даже только от обдумывания и планирования такой задачи.
Расскажу немного о таблицах.
Строки таблиц могут содержать данные любых базовых типов и объекты.
При этом возможно в колонках строк можно использовать разного типа данные (например в первой строке первый элемент строка, а в следующей объект).
Возможно создание произвольного количества индексов для таблиц.
Таблицы также могут быть сохранены в мета файлах (любой сложности и иерархии).
Конечно работа с таблицами реализована весьма эффективно.
Например доли секунды требуются для создание таблицы, содержащей например миллион натуральных чисел, получения их суммы и удаления элементов в трёх циклах.
Конечно не панацея, но «Представляете как в таких условиях легко было работать?» (как говорил «папа» в фильме «Джентельмены удачи»).
А вот теперь спрошу вас.
В ныне разрабатываемых стандартах С++ такие возможности есть?
Сам и отвечу.
И близко нет.
И акцентирую то, что компиляторы при этом не при деле.
Стоят в сторонке, хмурятся и нервно кусают губы.
«Из C++ хотят сделать Python».
Цель вообщем-то интересная и возможно даже полезная, но зачем при этом усложнять синтаксис компилятора?
С виду всё выглядит «правильно» и якобы по другому никак.
Хотя конечно кое-какую функциональность в компиляторы и линкер следует добавить (но похоже этого никогда не будет).
Для начала, это может быть исполнительная дисфункция, от которой могут даже что-то прописать (если не в бывшем СССР).
По сути - у меня первый свой проект, похожий на что-то, получился, когда:
минимизировал препятствия для силы воли - разрешил себе делать плохо, начал делать как удобно себе в одном сцк файле на скриптовом языке, забил на соблюдение всяких существующих принятых форматов и красоты, забыл про применимость для реального мира и тому такое всякое,
максимизировал награду - начал с ничего не делающего гуя и примитивного хранилища сообщений, и там дальше лопатил все до стадии, на которой в общем неплохая маленькая программка получилась, и можно было бы перейти к оптимизации и вычищению ненужного, но уже было лень,
Т.е. начал с наглядного не думая вперед - с самого начала это была попытка написать свою реализацию Kademlia с гуем, чтобы видеть состояния. Потом на ней сделал поиск объектов - контактов, групп, сообщений. Потом поиск отдельных сообщений убрал, ибо достаточно найти группу и контакты и синхронизировать что у них есть.
Посмотреть не дам, это очень неаккуратная вещь, подражающая почтовому клиенту.
Это есть в любом языке, включая C и Basic. Более того, львиная доля из этих структур данных на практике не пригождается. Нужны массивы и словари. Или даже гомогенная структура (ведь массив по сути такой же словарь).
Расскажу немного о таблицах.
Нужна поддержка SQL для запросов по таким таблицам. Причём интегрированного в языке в типизированном виде. Можно посмотреть, как это сделано в PL/SQL.
Строки таблиц могут содержать данные любых базовых типов и объекты.
Это очень плохо. Объекты поддерживать нельзя. Это лишнее. Таблица суть реляция, отношение. К объектам это не имеет отношения. Должны быть только данные базовых типов. Да и в целом ООП показало себя плохим подходом, от объектов лучше держаться подальше, включая терминологию.
При этом возможно в колонках строк можно использовать разного типа данные (например в первой строке первый элемент строка, а в следующей объект).
Это очень плохо. Должна быть строгая типизация.
Например доли секунды требуются для создание таблицы, содержащей например миллион натуральных чисел, получения их суммы и удаления элементов в трёх циклах.
Это очень долго. Например на Java такая операция выполняется за 2-3 миллисекунды. А ведь Java это не самый быстрый язык. Нужно оптимизировать скорость.
Вам бы на какой-нибудь форум 1С зайти и сказать - «Ребята должна быть лишь строгая типизация и ни какой иной».
На мой взгляд до этой мысли доходит любой программист. Не раз видел, как те же программисты, выросшие на javascript, причём не просто выросшие, а поучаствовавшие в относительно нетривиальном проекте, потом участвуют в проекте с typescript и их мировоззрение прямо меняется. Когда они видят, сколько багов TypeScript ловит прямо в редакторе. Когда они осознают, что вот эту опечатку они бы ловили ещё час, а может быть и закоммитили бы с ней (особенно этим грешат ветки с обработкой ошибок, которые никто никогда не тестирует).
Динамическая типизация хороша ровно для одного - по-быстрому сделать реализацию ЯП. Это может быть приемлемо для каких-то встраиваемых в проект языков, на которых никто не будет писать никаких больших программ. Т.н. языки сценариев. Хотя, как показывает практика, усидчивые люди и на bash могут писать огромные программы… Но лучше так не делать.
Причём я даже считаю, что bash стоило бы заменить статически типизированным языком программирования. Правда у меня не хватает таланта спроектировать такой язык (я пытался). Но чувствую, что можно. И это дало бы много преимуществ. К примеру автоматические системы автодополнения, без написания огромных скриптов для каждой программы (пришлось бы писать аналог статических биндингов для каждой программы, конечно, но это другое).
Динамическая типизация хороша ровно для одного - по-быстрому сделать реализацию ЯП. Это может быть приемлемо для каких-то встраиваемых в проект языков, на которых никто не будет писать никаких больших программ.
Прочитайте внимательно, то что в моём посте сказано.
Приведу copy/paste из него
И акцентирую то, что компиляторы при этом не при деле.
Стоят в сторонке, хмурятся и нервно кусают губы.
Можно динамически в run-time создавать объекты о которых компилятор ничего не знает и эффективно их использовать.
Это API можно использовать в любом ЯП.
Кроме этого поддержана возможность сохранения объектов в файлах (мета файлы) и использовать.
Например можете программно создать некоторое хранилище данных и сохранить в файле.
Это предоставит возможность использовать его в любых ЯП.
Core хранилища данных ныне разрабатываю.
В нём будет много полезных фич, которые упрощают разработку многих проектов.
Хранилище данных возможно использовать для разных потребностей:
некая СУБД;
хранилище каких-либо рессурсов;
…
Затем первым делом разработаю локаль и произведу рефакторинг API.
Хранилища могут содержать множество объектов любой сложности и иерархии.
На мой взгляд до этой мысли доходит любой программист.
Контрпримеры: Smalltalk, Erlang. Позднее связывание позволяет менять систему на лету, что полезно по крайней мере для прототипирования.
Но что полезно для прототипа, вредно для прода. Прототип большую часть времени заведомо логически противоречив, а вопрос о скорости даже не ставится. Полноценная система же должна работать одновременно корректно и шустро.
Это вообще не промышленные языки, они ничему контрпримером быть не могут. Из контрпримеров разве что можно называть самый популярный в мире Python, но я верю, что это просто какая-то всемирная глупость.
Позднее связывание позволяет менять систему на лету, что полезно по крайней мере для прототипирования.
JVM позволяет менять систему на лету, не жертвуя типобезопасностью.
Даю на вход некоему алгоритму сначала како-то количество файлов типа xslx.
API анализирует их, сопостовляет архитектуру каждого из xlsx и формирует метаданные, которые позволят в память загрузить любой из
проанализированных xslx.
Затем программист может использовать всего лишь одну функцию для загрузки любого xlsx и работать с ним.
Вышеописанные действия пробовал использовать для анализа doc документов, генератора отчётов FastReport, ,,,
Всё корректно функционирует.
Видите ли, те доводы, которые вы приводили в чём-то и правильные, но мир алгоритмов и задач весьма велик и это API позволит не разрабатывать
на каждый чих мегатонны кода для использования каких-то форматов данных.
Безусловно далее core расширю возможностью хранить и использовать знания.
Это будет конечно не ИИ, но как говорится «были бы кости, а мясо нарастёт».
ИМХО вы сами себя ограничиваете лишь какими-то методами разработки, которые для вас «всё и вся».
Зря!
Мир алгоритмов и задач весьма велик.
Статическая типизация даёт стабильность и безопасность, динамическая — необычные и легковесные способы решения задач. Иногда их получается совмещать, как это делает Go с интерфейсами или C++ с шаблонами.
Статическая типизация либо невыразительна, либо слишком переусложнена (привет Haskell). И она не всесильна. Ей поклоняются как индийскому богу, в то время как такие языки как питон продемонстрировали, что корректность может быть проще достигнута через тестирование.
плюсовые шаблоны - это не динамическая типизация. там есть RTTI, есть явное приведение типов, есть void указатели, как в C, но типизация в плюсах статическая, как и в сишечке.
строго говоря, типизация нужна на этапе компиляции. а так-то все данные - это просто байты в памяти. поэтому можно работать с адресами и интерпретировать эти байты как угодно. главное, делать это аккуратно, чтобы не произошли всякие факапы.
требует таковой тока от доменов над данными но полностью приемлет отсутсвие типизации(что статической что динамической) над кодом - хотя бы на уровне соблюдения не только фактического заголовка но и текстуальной приводимости
Erlang - «промышленный». его Ericsson создавал для телекома и он там активно используется. правда, корявый он до жути.
Я в курсе его истории. Но сегодня это мёртвый язык, как и Smalltalk. Его пытались оживить, заменив Erlang на другой язык (Elixir), но пациент скорее мёртв, чем жив.
тащемта, кроме телекома его практически нигде и нет.
Да и в телекоме его нет. Телеком стал просто сетевым провайдером, ничего там соединять больше не надо, под капотом обычные IP-сети, которые обрабатываются на всяких железных роутерах. Когда-то и амазон на лиспе был написан, много чего забавного было раньше, сейчас всё куда скучней.
требует таковой тока от доменов над данными но полностью приемлет отсутсвие типизации(что статической что динамической) над кодом - хотя бы на уровне соблюдения не только фактического заголовка но и текстуальной приводимости
живее всех живых. в телекоме его полно и на нём активно пишут софт.
просто он как DSL для телекома и только там и используется. а так, когда я работала на ОПСОСа там даже курсы Erlang'а предлагали всем желающим. есть целая индустрия курсов, сертификации и вот этого всего.
у тебя совершенно неправильные представления о телекоме. не надо гнать пургу.
Попробовал в yandex произвести поиск «телекоме какой ЯП использует»
Вот ответ
C++ — основной язык разработки в телекоме, но также используются Go и Python.
habr.com
В зависимости от задачи и компонента системы в телекоме применяют разные языки программирования:
Модуль управления мобильными устройствами. Используют C++.
Модуль управления базовой станцией. Для этого компонента применяют C++ и Go.
Ядро сети. Для работы с ядром сети, которое базируется на облачных технологиях, используют C++.
Система управления сетью и бизнес-поддержка системы. Для этих целей применяют JavaScript, Python, Go.
ты гуглил, а я работала в телекоме. разные вещи, однако. плюсы там тоже есть, конечно. пистона я там не видела ни разу, к счастью. как и го. видела также довольно много жабы.
а на Эрланге до сих пор пишут монстры телекомовского оборудования вроде Ericsson и Siemens, так что наши местные ОПСОСы готовят специалистов, чтобы поддерживать и развивать софт, который поставляется с оборудованием. на их оборудовании работает весь наш телеком.
при этом у меня нет ни малейших симпатий к Эрлангу. я в своё время посмотрела на него и отказалась от бесплатных курсов от работодателя. он был настолько корявым, что ну его нафиг. но факт остаётся фактом: Эрланг вполне жив, активно используется и будет использоваться ещё долго.
Попробовал задать вопрос «yandex не ахти правда ли это?»
Ответ
Нельзя однозначно сказать, правда ли утверждение «Яндекс не ахти». Мнения о работе сервисов Яндекса могут быть разными.
В некоторых отзывах пользователи высказывают негативные впечатления от работы сервисов Яндекса. Например, в 2023 году на сайте DTF обсуждали проблемы с качеством работы мобильных приложений Яндекса, служб поддержки и правил оказания услуг.
dtf.ru
otzovik.com
С другой стороны, есть и положительные отзывы. Например, пользователи отмечают сервис Яндекс Картинки, который, по их мнению, не имеет аналогов.
otvet.mail.ru
Таким образом, мнение о работе Яндекса и его сервисах зависит от личного опыта и восприятия пользователя.
Попробовал задать вопрос «yandex не ахти правда ли это?»
Вообще-то yandex поиск мне нравится.
Yandex прекрасно осведомлён о Русских ресурсах и его ответы много лучше иных поисковых систем.
Да и по вопросам разработки даёт хорошие ссылки …
Мадам, вы, наверное, работали в «телекомах», когда Go еще не «всплыл»? а была мода на «Java» и «Erlang»? Увы и ах, но всякие там «ынтырпрайные архитекторы» и другая околошваль, определяющая на чем будем писать, сильно падки на моду.
Так то по мне, в телекомах должен быть C/С++ и Rust, по основной деятельности. Бухгалтерию и другую обслугу не берем в расчет - там может и Java даже присутствовать.
Согласен, но это никак не является тем путём, который для меня приемлем.
Да просто.
«В этом болотистом низменном крае» работы ВАЛОМ.
Нерешённых проблем полно.
Их нужно решать.
На этом поприще не столько гениальным нужно быть, а просто не лениться.
Мне ближе вопросы, касающиеся разработки технологий, которые упростят разработку проектов.
Многие и не понимаю даже этого и думают, что если у них: красивая жена, машина, …, куча денег, …, то они счастливо прожили жизнь.
Во имя справедливости:
Любимая жена (красота, как известно, в глазах смотрящего) является очень весомым фактором счастья.
Деньги, разумеется, фактором счастья не являются. Но могут существенно помочь в достижении. К примеру, если человек любит путешествовать, любоваться природными красотами и творениями рук человека в разных концах мира, то куча денег может… скажем так, сильно облегчить этот процесс.