The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск языка программирования Rust 1.34"
Отправлено Аноним, 14-Апр-19 18:31 
>>> Что ты называешь "нормальным" ООП? Как в java? Как в C++? Как
>>> в Haskell? Как в gtk? Какой из ООП нормален?
>> ООП с наследованием, где методы и свойства наследуются автоматически.
> Deref/DerefMut тебе в помощь.

И где тут автоматическое наследование? Всё же руками приходится делать, не?

>> ООП в низкоуровневых языках - это всего лишь синтаксический сахар.
> Дайте мне определение синтаксического сахара. Всё это синтаксический сахар. asm -- это синтаксический сахар над бинарным представлением машинного кода, позволяющий не считать адреса и смещения вручную.

Да.


>Python -- это синтаксический сахар над интерпретатором,  позволяющий дёргать те или иные функции интерпретатора.

Нет. поскольку питон - язык интерпретируемый.

> Если ты нашёл свой комп на помойке, то что ты вообще делаешь в разработке ПО? Не, ну реально.

Так и запишем - "вход только для потреблятелей".

> Тут вполне нормально и регулярно приходится пересобирать половину системы только для того, чтобы иметь отладочную информацию к ней, и иметь возможность протрейсить выполнение программы внутрь библиотеки, чтобы понять почему оттуда вылетает сегфолт.
> Я пользуюсь генту, потому что тут без проблем можно отладочную информацию складывать рядышком с библиотеками и бинарями и подгружать её по мере необходимости, если я нечаянно закопался в какую-то библиотеку, про которую впервые слышу. Если бы этого не было, я бы давно забил на всё и вернулся бы в слакварь устанавливать программы при помощи make install.

Так и запишем - "не смогли реализовать хранение отладочной информации во внешних файлах и подгрузку по мере надобности, даже имея перед глазами готовую и отполирванную реализацию от Microsoft".

>> Современный язык должен уметь в бинарные пакеты-модули. Без исходника, без многочасовой сборки. При этом линарные пакеты должны быть обязательно подписаны приватным ключём автора.
> А, ты о том, чтобы _пользоваться_ компьютером, быть пользователем и ставить программы себе в систему? Не о том чтобы разрабатывать?

Нет, я и о разработке, и о пользовании. Потому что разработка включает в себя использование. И пересобирать мир для этого не надо. Проприетарасты это поняли и реализовали первыми, почему до адепты СПО страдают фигнёй, пересобирая мир, мне тоже понятно: потому что в отличии от проприетарастов, которым клиенты платят деньги в том числе за сервис, у спошников каждый сам за себя и некоторым даже бинарные пакеты через спонсируемый корпорациями CI распространять западло.


> В задачи cargo не входит быть системным пакетным менагером. Чтобы устанавливать программы тебе следует пользоваться apt или что у тебя там стоит. То есть cargo -- это просто другой инструмент, если он попадает в класс пакетных  менагеров, это не значит, что он задуман как замена для apt или emerge.

По-моему все пакетные менеджеры, которые я встречал, глубокь ущербны.


>> * сделать пакеты не так уж и трудно. У дебиана конечно просто
>> отвратительный инструментарий для пакетирования, но есть на ГХ один репозиторий с лучшим инструментарием, который дёргается из питона, а не из баша.
> В случае rust'а -- это не так. Nightly, beta и stable сосуществуют.
> Фиксы идут во все три ветки. Stable лучше чем nightly в плане стабильности и надёжности. Более того, ты можешь столкнуться с проектом, который под nightly не работает. Последнее время таких breaking changes немного,  и как правило работает, но всё же есть вполне неиллюзорные шансы.

Именно поэтому надо выпилить стейбл и бету - они развращают разработчиков. Если что-то сломалось в пакетах в результате запланированного изменения API, значит это проблема пакета. И её по любому придётся исправлять, если пакет не выброшен на свалку истории: когда-то nightly станет stable, stable станет obsolete dino shit, и пакет - вместе с ним, потому что с новым stable он будет несовместим, с новым nightly и подавно, и править всё это придётся пользователям, которым больше всех нужно, при этом создавая свой форк, потому что остальные предпочтут не закрывать свою гору технического долга, а объявить дефолт и сказать "мы сидим на на старой версии, новая не нужна". Проходили уже с python 2 такую хрень. В отличие от раста в питоне есть 2to3 и изменения косметические, пофиксить элементарно, в расте скорее всего либа так и останется непофикшенной, то есть фактически исчезнет, соответственно будет ещё один аргумент в пользу "в гробу я видал этот хипстерский раст". Поэтому фиксить несовместимости с самой новой версией нужно как можно раньше и пользоваться преимуществами nightly.

> Потому что есть много чего зависимого от тулчейна. Все библиотеки, например, должны быть перекомпилированы под каждый тулчейн: windows сборка пакета для x86 бесполезна для unix'а нarm64.

Библиотеки-то да, я говорю про тулчейн.

> Затем, разные версии rustc имеют разные возможности.
> У них есть общности, типа llvm (в смысле той прослойки llvm которая между фронтендом и бекендом), но это маленькая прослойка, на фоне всего остального.

Я имею в виду что со CLangом не нужен десяток тулчейнов, нужен 1 шланг + стандартная библиотека для платформы. Один и тот же шланг строит и под винду используя MinGW, и под винду, используя msvcrt, и под линукс x86, используя мюсл, и под ведро, и под карты NVidia, и под карты AMD и под айфоны. Почему так не сделано для раста?

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру