Обновить
6

Пользователь

0,1
Рейтинг
3
Подписчики
Отправить сообщение

но они при этом производят реальные новые продукты, в отличии от яндекса.

С чего вдруг то - crustc создает исходники на С, вы можете их комплировать любым существующим С компилятором.

В яндексе может и не слышали, а в бигтех компаниях не просто так создаются свои новые языки.

Она и на С++ будет выглядеть примерно как на расте, если написать эквивалентной по функционалу.

std::expected<std::size_t, DWORD> write_memory(
    HANDLE handle,
    std::uintptr_t address,
    std::span<const std::uint8_t> data
) {
    SIZE_T bytes_written = 0;

    BOOL success = WriteProcessMemory(
        handle,
        reinterpret_cast<LPVOID>(address),
        data.data(),
        data.size(),
        &bytes_written
    );

    if (!success) {
        return std::unexpected(GetLastError());
    }

    return bytes_written;
}

Ничего он не решает, это трейд-офф между ценной и качеством, как и все такие решения. У qt свой рендер стек, а значит можете забыть про нативный UI, про плавную инерционную прокрутку, про быстрый отклик на кастомных жестах и т.д. Scoped Storage, runtime permissions, bluetooth, камера в специфических сценариях, новые фичи Android/iOS, ARKit, расширенные возможности клавиатуры - все это принесет вам кучу головной боли и в конце концов вы все равно обнаружите себя пишущим JNI/Objective-C код для решения проблемы.

Так вот код раста это проверяет, там не просто так Result и знак вопроса после вызова, а ваш код нет. Вы напишите на С++ полноценную обертку, с обработкой ошибок, с гарантией осмысленного результата, с гарантией что в api не передаётся nullptr или буфер размера меньше чем size, что буфер точно не деаллоцирован в момент передачи и точно инициализирован и так, чтобы на уровне компилятора все это проверялась, как это происходит в вашем же примере на раст. А потом уже сравним код.

А ещё много плохого. Вопрос наличия альтернатив - то, что в СССР много людей ездело на запорожце не делает его хорошим автомобилем.

Код на расте это безопасная обертка над апи, к примеру гарантирующая согласованость передаваемые данных и размера. Ваш код на С(а это не С++) это просто прокси, который прокидывает все как есть, оставляя все проблемы вышестоящему коду, включая обработку ошибок.

Если вам нужен стриминг данных, то самое подходящее это веб-сокеты, нет?

Так в этом и проблема, что есть платформы под которые llvm не собирает бинари, какой-нибудь специфичный микроконтроллер. Теперь в таких случаях можно писать на расте, транслировать в С и дальше собирать С-компилятором.

В чем троллинг, в том что теперь на расте можно писать еще под более широкий класс устройств(по сути любое где есть компилятор с89)?

Никто ничего не забыл. Согласно GWI ноутбук или десктоп хотя бы иногда используют только 60% пользователей интернета. Так что выбрав десктоп приложение вместо веба вы сужаете свою потенциальную клиентскую базу в 1.5 раза. Не говоря уже о том, что в случае веб-приложения вам нужна одна команда и одно приложение, а под десктоп придется делать разные версии под каждую платформу. В большинстве случае подобные экономические потери никак не оправданы.

С ростом веба и мобильных платформ

конечно не денется - будете получать лицензию разработчика на свои документы.

Да, конечно, под айфон же не существует разработки. Будут получать доступ через аккаунт разработчика с kyc процедурой.

Если его сравнивать с egui, в чем отличие?

речь про 700к рублей. Казна пустеет, милорд(с)

Не знаю что у вас там, но судя по "goto-driven state loops" код действительно специфичный.

30 опыта смогли в ответ выдать только нытье про какого-то индуса, который ему в штаны насрал и оправдания что портянки из if не так уж и сложно прочитать. Ну как и следовало ожидать. Лучше бы, как обычно, просто анекдот рассказал.

NDA запрещает статьи на технические темы писать в блоге? Ну ты хоть немного постарайся когда врёшь в очередной раз.

1
23 ...

Информация

В рейтинге
3 498-й
Откуда
Саха (Якутия), Россия
Дата рождения
Зарегистрирован
Активность