home.social

#ffi — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #ffi, aggregated by home.social.

  1. You don't have to rewrite your C firmware in Rust all at once. Christian Meusel's workshop at Oxidize 2026 is about doing it incrementally - starting from build integration and FFI calls, through to third-party crates for QR generation.

    🔗 oxidizeconf.com/sessions/integ

    #Oxidize2026 #RustLang #EmbeddedRust #FFI #BareMetalRust #Firmware

  2. Я дал LLM писать unsafe Rust полгода. Miri плакал

    Полгода я давал LLM писать unsafe Rust в боевых проектах и разбирал каждый блок под miri и санитайзерами. Категории ошибок, которые модели делают стабильно: aliasing, провенанс, layout в alloc/dealloc, забытый ManuallyDrop, гонки в FFI-колбэках, ручные Send/Sync, uninit-память, Pin. Каждая категория идёт с минимальным примером и фиксом.

    habr.com/ru/articles/1035914/

    #Rust #unsafe #miri #FFI #UB #aliasing #MaybeUninit #Pin #LLM #AI

  3. Я дал LLM писать unsafe Rust полгода. Miri плакал

    Полгода я давал LLM писать unsafe Rust в боевых проектах и разбирал каждый блок под miri и санитайзерами. Категории ошибок, которые модели делают стабильно: aliasing, провенанс, layout в alloc/dealloc, забытый ManuallyDrop, гонки в FFI-колбэках, ручные Send/Sync, uninit-память, Pin. Каждая категория идёт с минимальным примером и фиксом.

    habr.com/ru/articles/1035914/

    #Rust #unsafe #miri #FFI #UB #aliasing #MaybeUninit #Pin #LLM #AI

  4. Я дал LLM писать unsafe Rust полгода. Miri плакал

    Полгода я давал LLM писать unsafe Rust в боевых проектах и разбирал каждый блок под miri и санитайзерами. Категории ошибок, которые модели делают стабильно: aliasing, провенанс, layout в alloc/dealloc, забытый ManuallyDrop, гонки в FFI-колбэках, ручные Send/Sync, uninit-память, Pin. Каждая категория идёт с минимальным примером и фиксом.

    habr.com/ru/articles/1035914/

    #Rust #unsafe #miri #FFI #UB #aliasing #MaybeUninit #Pin #LLM #AI

  5. Я дал LLM писать unsafe Rust полгода. Miri плакал

    Полгода я давал LLM писать unsafe Rust в боевых проектах и разбирал каждый блок под miri и санитайзерами. Категории ошибок, которые модели делают стабильно: aliasing, провенанс, layout в alloc/dealloc, забытый ManuallyDrop, гонки в FFI-колбэках, ручные Send/Sync, uninit-память, Pin. Каждая категория идёт с минимальным примером и фиксом.

    habr.com/ru/articles/1035914/

    #Rust #unsafe #miri #FFI #UB #aliasing #MaybeUninit #Pin #LLM #AI

  6. Continuing the exploration @tealeg sparked yesterday: lazy-ffi in Chicken Scheme is nice.

    $ csi
    CHICKEN
    (c) 2008-2021, The CHICKEN Team
    (c) 2000-2007, Felix L. Winkelmann
    Version 5.3.0 (rev e31bbee5)
    linux-unix-gnu-x86-64 [ 64bit dload ptables ]

    Type ,? for help.
    #;1> (import lazy-ffi)
    ; loading /var/lib//chicken/11/lazy-ffi.import.so ...
    ; loading /var/lib//chicken/11/lazy-ffi.so ...
    ; loading /var/lib//chicken/11/srfi-1.so ...
    ; loading /var/lib//chicken/11/srfi-69.so ...
    ; loading /var/lib//chicken/11/bind.so ...
    #;2> (begin #~"libc.so.6")
    (libc.so.6)
    #;3> (#~printf "Hello, world. Mom is #%d! We %s her!\n" 1 "love")
    Hello, world. Mom is #1! We love her!

    wiki.call-cc.org/eggref/5/lazy

    #chicken #scheme #ffi

  7. I really wish there was support for generics in flutter_rust_bridge would make my work waaaay easier..

  8. Как использовать Rust внутри приложений на .NET MAUI

    Когда производительность начинает иметь значение По производительности Rust находится в той же лиге, что и C++, но с заметно более дружелюбной моделью безопасности. Возможно, вы уже слышали о командах, которые постепенно переходят на Rust , заменяя существующий код. А если вам уже приходилось бороться с лагами от GC или пытаться сделать плавную анимацию, отсутствие сборщика мусора начинает выглядеть особенно заманчиво. Но можно ли сделать так, чтобы использовать Rust внутри приложения на .NET MAUI было действительно удобно?

    habr.com/ru/articles/1028322/

    #maui #rust #ffi #interop

  9. Как использовать Rust внутри приложений на .NET MAUI

    Когда производительность начинает иметь значение По производительности Rust находится в той же лиге, что и C++, но с заметно более дружелюбной моделью безопасности. Возможно, вы уже слышали о командах, которые постепенно переходят на Rust , заменяя существующий код. А если вам уже приходилось бороться с лагами от GC или пытаться сделать плавную анимацию, отсутствие сборщика мусора начинает выглядеть особенно заманчиво. Но можно ли сделать так, чтобы использовать Rust внутри приложения на .NET MAUI было действительно удобно?

    habr.com/ru/articles/1028322/

    #maui #rust #ffi #interop

  10. Как использовать Rust внутри приложений на .NET MAUI

    Когда производительность начинает иметь значение По производительности Rust находится в той же лиге, что и C++, но с заметно более дружелюбной моделью безопасности. Возможно, вы уже слышали о командах, которые постепенно переходят на Rust , заменяя существующий код. А если вам уже приходилось бороться с лагами от GC или пытаться сделать плавную анимацию, отсутствие сборщика мусора начинает выглядеть особенно заманчиво. Но можно ли сделать так, чтобы использовать Rust внутри приложения на .NET MAUI было действительно удобно?

    habr.com/ru/articles/1028322/

    #maui #rust #ffi #interop

  11. Как использовать Rust внутри приложений на .NET MAUI

    Когда производительность начинает иметь значение По производительности Rust находится в той же лиге, что и C++, но с заметно более дружелюбной моделью безопасности. Возможно, вы уже слышали о командах, которые постепенно переходят на Rust , заменяя существующий код. А если вам уже приходилось бороться с лагами от GC или пытаться сделать плавную анимацию, отсутствие сборщика мусора начинает выглядеть особенно заманчиво. Но можно ли сделать так, чтобы использовать Rust внутри приложения на .NET MAUI было действительно удобно?

    habr.com/ru/articles/1028322/

    #maui #rust #ffi #interop

  12. Прямая трансляция во Flutter через WebCodecs: как пришлось написать свой декодер

    Когда live-видео приходит как сырой H.264 поток через WebSocket, стандартные Flutter-плееры перестают работать. В этой статье я разбираю, почему готовые решения не подошли и как я пришёл к необходимости реализации собственного декодера на C++ с использованием FFmpeg.

    habr.com/ru/articles/1010458/

    #WebCodecs #Flutter #FFmpeg #h264 #ffi

  13. I wish I could explain to you all how proud (and simultaneously insecure) I am of what I have been working on, and how utterly insane and complex my project has been becoming. 🫠 Suffice to say I have built an automatic device coordination and communication system (including spinning up new data streams :uplink: )...all of that was just to build this simple game for my experiment, but to make it flexible to run with teams of 2, 3, 5, N, players and be able to handle data collection, EEG, and other stuff. :corteximplant_b: :mk2:

    It, hopefully, will be a super useful tool for anyone wanting to do research into groups, social dynamics and related investigation...or you could just use it to build a game haha. :commodore:

    github.com/NexusDynamic/

    #lsl #labstreaminglayer #coordination #cnc #cc #dart #cpp #c #ffi #flutter #flame #forge2d #oss #foss #research #cognition #cognitivescience #cogsci #eeg #neuroscience #psychology #socialdynamics #groupdynamics #socialgroupdynamics #research #researchparadigm #paradigm #software #programming #programmer #dev #gamedev #softwaredevelopment #coding

  14. This is really cool and kinda insane—running modern #Perl on the #Java Virtual Machine (#JVM).

    Why? Maybe you want the flexibility of Perl scripts in your JVM-based environment (including #Kotlin and #Scala) without shelling out. More reasons here: github.com/fglock/PerlOnJava/b

    Anything with #XS or #FFI C code has to be ported to Java, mind you. But @fglock has been doing just that, e.g., #DBI support via #JDBC and #JSON via fastjson2.

    mastodon.social/@fglock/113034

    #programming #coding

  15. Miri ловит то, что пропускает компилятор

    Привет! Сегодня рассмотрим инструмент, который поможет вам с низкоуровневым кодом на Rust. Если вы пишете на Rust только безопасный код, возможно, никогда о нём не слышали. А вот тем, кто периодически заглядывает в тёмные уголки unsafe , этот инструмент сэкономит нервишки.

    habr.com/ru/companies/beget/ar

    #Rust #miri #FFI #зависимости #библиотеки_rust

  16. Performance-Boost für C#: Integration von Rust über FFI bringt sechsfache Beschleunigung

    Die Kombination verschiedener Programmiersprachen verspricht das Beste aus beiden Welten – doch funktioniert das in der Praxis?

    all-about-security.de/performa

    #performance #FFI #c #rust

  17. Git в браузере. Расширяем возможности с помощью LFS

    Привет, Хабр! Я Паша, разработчик

    habr.com/ru/companies/gram_ax/

    #git #libgit2 #lfs #webassembly #rust #ffi #emscripten #docsascode #opensource #localfirst

  18. Unsafe Rust для FFI: безопасные обёртки над C-библиотеками без утечек памяти

    Rust хорош своей безопасностью, но рано или поздно приходится выйти за пределы уютного мирка borrow checker. Нужно подключить проверенную C-библиотеку, использовать системный API или просто переиспользовать существующий код. И тут начинается unsafe. Правильно приготовленный unsafe позволяет создать безопасный API поверх небезопасного кода, сохранив все гарантии Rust для пользователей библиотеки. Разберём, как писать FFI-обёртки, которые не подтекают и не падают.

    habr.com/ru/companies/otus/art

    #rust #FFI #безопасные_обертки #указатели #управление_памятью #коллбэки

  19. Rust → library → Swift FFI. The kind of yak shaving that somehow ends up being the highlight of the week.

    #Rust #Swift #iOSDev #FFI

  20. I am increasingly attracted to XS.
    I think the workflow for modules one puts out should be Inline -> XS
    For rapid binding of external libraries to #Perl, SWIG or #FFI
    LONG LIVE C MACROS

  21. librats: Выпуск версии 0.5.x. Ускорение поиска пиров, алгоритм spider, поддержка JavaScript, Python и многое другое

    Привет! Работа над ядром поисковика rats-search продолжается. Новая версия библиотеки librats (v0.5.3) приносит важные архитектурные улучшения для построения распределенных сетей в условиях NAT и блокировок. Ключевые изменения: Унифицированный API (FFI): Завершена интеграция с Node.js. В отличие от фрагментированных реализаций libp2p, librats предоставляет идентичный набор функций для C++, Python, Node.js и Android через FFI. Эффективный DHT: Реализован алгоритм Spider для прибегания с сбора announce. Добавлена поддержка branch-factor и маршрутизации на основе задержек (RTT-routing). Персистентность: Routing-таблицы сохраняются при перезапуске, что критически важно для связности сети в сложных сетевых условиях. BitTorrent: Значительный рефакторинг и оптимизация модуля. Платформы: Windows (x64), Linux (x64), Android (32/64), macOS (x64).

    habr.com/ru/articles/976366/

    #сетевые_технологии #p2p #p2pсети #libp2p #librats #ffi #блокировки #dht #mdns #с++

  22. Как я Rust в Python встраивал

    Rust все популярней, а вместе c этим создается много библиотек для Python на Rust. В данной статье узнаем, как создать простенькую библиотеку для Python на Rust на примере кодирования данных в Base 64.

    habr.com/ru/articles/970752/

    #pyo3 #ускорение_кода #оптимизация_python #ffi

  23. Want to use @ratatui_rs in other languages?
    The FFI just dropped 🔥

    ➡️ **ratatui-ffi** — Native C ABI bindings for Ratatui.

    📦 Shipped as a tiny cdylib you can call from C, C#, Go, Python, TypeScript, & more.

    ⭐ GitHub: github.com/holo-q/ratatui-ffi

  24. In 1985, Wake published her autobiography, The White Mouse, the nickname given to her by the Gestapo for her elusiveness. Some of her wartime exploits cannot be independently verified and though she was one of the most decorated women who fought against the Nazis in WW2, her stories remain apocryphal. She died on August 7, 2011, at the age of 98. (7/7 finis)

    #FFI #Maquis #WW2 #SOE #FSection

    en.wikipedia.org/wiki/Nancy_Wa

  25. “After the war (Wake) said: ‘When I’m asked what I’m most proud of doing during the war, I say ‘the bike ride.’ On her return to the Maquis camp she remembered: ‘I couldn’t stand up, I couldn’t sit down, I couldn’t do anything. I just cried.’ She needed brandy to treat her saddle sores. Despite air drops and Inter-Allied assistance, the FFI forces retreated on June 20. (6/7)

    #FFI #Maquis #WW2 #SOE

    Resistance, Halik Kochanski, p. 583

  26. On June 10, “the Germans mounted a major attack with 12,000 troops supported by armored cars, heavy artillery, mortar batteries, and aircraft.” The SOE wireless operator, Denis Rake, appealed for reinforcement supplies, but he was forced to abandon his radio set codebooks. Subsequently, “Nancy Wake undertook a marathon bicycle ride of over 200 km…” to another circuit to request airdrops. (5/7)

    #FFI #Maquis #WW2 #SOE

    Resistance, Halik Kochanski, p. 583

  27. In May, 1944, the Maquis commander Émile Coulaudon (AKA, Col Gaspard) was convinced an Allied invasion of France was imminent and through misleading communications with SOE, thought there was Allied support for a base of Maquis operations centered on Mont Mouchet. 10,000 FFI resisters came to Mont Mouchet, though only 1/3 were well armed. On June 2, they were attacked by an SS battalion of 800 men, but the assault was repulsed. (4/7)

    #FFI #Maquis #WW2 #SOE

    Resistance, Halik Kochanski, p. 583

  28. A member of the French Forces of the Interior (FFI) uses a truck for cover during gun battles with German snipers in Dreux, August 1944. During this period several French towns were liberated by the FFI in advance of Allied forces.

    #WW2 #France #FFI #Resistance

    iwm.org.uk/collections/item/ob

  29. Единый код валидаторов на фронте и бэке (PHP + FFI + Go + JS)

    Бывает полезно проводить валидацию данных из формы ввода и на фронте и на бэке, например чтобы не гонять лишний запрос с заведомо "плохими" данными. Отсюда появляется задача написания двух одинаковых валидаторов для фронта и бэка. Если фронт и бэк написан на одном языке (привет js+node), то мы можем напрямую использовать один код валидатора и там и там. В остальных случаях (js+php, java, python, go, dotnet) есть проблема. Во-первых придётся два раза писать примерно одно и то же на двух языках, во-вторых нужно убедиться, что написанное работает одинаково. Особенно печальны случаи, когда фронт ошибочно зарезает данные, валидные с точки зрения бэка и логики приложения.

    habr.com/ru/articles/941028/

    #php #javascript #golang #валидация #webразработка #ffi

  30. first time ever I use #luajit's #ffi library and I honestly don't know why did I do it with this

    #lua #love2d

  31. [Перевод] Dart 3.8 — что нового в Dart?

    Этот релиз приносит обновления форматера, null-aware элементы для коллекций, новые возможности кросс-платформенной разработки, лучший способ находить трендовые пакеты на pub.dev , доступность горячей перезагрузки (hot reload) для веба и многое другое! Мы также надеемся, что найдутся разработчики, заинтересованные в участии в нашей программе раннего доступа к FFigen и JNIgen .

    habr.com/ru/articles/912544/

    #dart #flutter #ffi #crosscompilation #Nullaware #formatter

  32. Прямая трансляция во Flutter через WebCodecs: как пришлось написать свой декодер

    Когда live-видео приходит как сырой H.264 поток через WebSocket, стандартные Flutter-плееры перестают работать. В этой статье я разбираю, почему готовые решения не подошли и как я пришёл к необходимости реализации собственного декодера на C++ с использованием FFmpeg.

    habr.com/ru/articles/1010458/

    #WebCodecs #Flutter #FFmpeg #h264 #ffi

  33. Прямая трансляция во Flutter через WebCodecs: как пришлось написать свой декодер

    Когда live-видео приходит как сырой H.264 поток через WebSocket, стандартные Flutter-плееры перестают работать. В этой статье я разбираю, почему готовые решения не подошли и как я пришёл к необходимости реализации собственного декодера на C++ с использованием FFmpeg.

    habr.com/ru/articles/1010458/

    #WebCodecs #Flutter #FFmpeg #h264 #ffi

  34. Прямая трансляция во Flutter через WebCodecs: как пришлось написать свой декодер

    Когда live-видео приходит как сырой H.264 поток через WebSocket, стандартные Flutter-плееры перестают работать. В этой статье я разбираю, почему готовые решения не подошли и как я пришёл к необходимости реализации собственного декодера на C++ с использованием FFmpeg.

    habr.com/ru/articles/1010458/

    #WebCodecs #Flutter #FFmpeg #h264 #ffi

  35. @petaramesh

    Voir ses camarades faillir dans la tactique opératoire c'est douloureux.

    #LAbjecteDarmanin trouvait la facho mollassonne sur #BFM #collabo

    Remonté de terrain depuis #HauteSaone :
    Cette ligne #Maginot sans queue ni tête se payera chère, c'est des munitions et du matériel qui manque déjà sur le front de la #BatailleCulturelle

    Les mêmes qui méprisent nos compatriotes abandonnés à l'emprise du fachisme

    Camarade De Courson, mes collègues aussi perdent la tête, on est où là ?

    #FFI

  36. @Cinquante_et_1

    Merci camarade, pour cette fine prise de parole !

    On a tort de mettre de côté la #perversion à l'oeuvre.
    Nous laissons nos compatriotes à poils face à l'emprise

    Cc @acrimed

    Bolloré à bon dos !

    Et ça ne change rien, #BFM #collabo

    #FFI

  37. Time to get funky:

    final class GoUri implements UriInterface
    {
    private FFI $ffi;
    private RawHandle $handle;

    public function __construct(string $uri)
    {
    $this->ffi = FFI::cdef(
    file_get_contents(__DIR__ . '/../../uri.h'),
    __DIR__ . '/../../uri.so',
    );

    $this->handle = new RawHandle($this->ffi->NewUri($uri));
    ...

    #php #golang #whynot #ffi

  38. @michaelzemmour

    Dans la playlist, on peut pousser une vidéo façon archive Ina ?

    Où comment vaincre sur les idées sans tomber dans le pièges des plateaux TV.

    Chaine LCP - 2009, dire qu'ils n'avaient même pas encore osé "l'eco-terrorisme"

    dailymotion.com/video/xbi2hu

    Ne jamais oubliés, ils refusent tout débat.

    Ici #Lure, #HauteSaone
    Pour des jours bienheureux

    #FFI

  39. Merci @Quenti d'insister.

    La PQR (Presse Quotidienne Régionale) est remplie de cas déjà trop inquiétant, pendant que les singes regarde le doigt RN.

    Dans les cœurs et dans les têtes bordel !

    Et oui, barrage. Ofc. Mais ça ne suffira pas !

    Au pif, ladepeche.fr/2024/06/28/sali-m

    Ici #Lure, #HauteSaone
    Pour des jours bienheureux

    #FFI