Здравствуйте, Shmj, Вы писали:
S>> Почему нельзя объясни? Это всё твои предположения. Еще раз все компилится в С++ а из него в нужный машинный код!
S>>https://joeysenna.com/posts/nativeaot-in-c-plus-plus
S>>https://stackoverflow.com/questions/74944873/call-nativeaot-c-sharp-dll-from-delphi
S>>https://learn.microsoft.com/ru-ru/dotnet/api/system.runtime.interopservices.unmanagedcallersonlyattribute?view=net-8.0
S>Вместо теоретических размышлений и вопросов — дай хотя бы ОДНУ практически реализованную библиотеку, которая такой фукнционал предоставляет — т.е. чтобы был запуск на 6 платформах и возможность использовать из любого языка.
S>Уверен что нет таких библиотек. Ни одной.
S>И при попытке реализовать — будет масса проблем, после которых неудобства синтаксиса С++ или Rust вам покажутся цветочками.
Еще раз есть проблемы с компиляцией в рантайме, которая обходится через интерпретатор и рефлексия без ограничений.
S>Жду от вас практическую бибилиотеку. Ну или вы попробуйте сделать. Уверен что нет таких библиотек и когда РЕАЛЬНО попробуете сделать (а не языком) — столкнетесь с непреодолимыми сложностями. Может сделать и даже статью на Хабре запилить если что-то получится из этого (и даже если не получится).
Мне они не нужны. И времени на данный момент тоже, что бы статьи писал. Возможность есть. Многие используют, так как в много библиотек. Но не все они на данный компилируются.
Но вот блазор в вэбассембли содержит еще и IL код который интерпретируется.
Но ты же утверждаешь, что нет возможности. Я тебе привел что IL код переводится в C++ а из него уже в код на нужной платформе со сборщиком мусора.
Обычно пишут такого рода библиотеки как плагины для доступа к существующему софту на .Net.
Просто раньше можно было подключаться через
Написание пользовательского хост-приложения .NET для управления средой выполнения .NET из машинного кода
Сейчас можно сразу компилировать в натив и использовать напрямую. Возможно еще и добавят генерацию заголовочных файлов.