8 repository-uri
Mechanisms for enabling interoperability between different programming languages, such as C++ and Rust.
Distinct from Rust Libraries: Candidates focus on specific Rust libraries or Git integrations rather than the FFI bridge mechanism itself.
Explore 8 awesome GitHub repositories matching programming languages & runtimes · Foreign Function Interfaces. Refine with filters or upvote what's useful.
Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital surfaces. It functions as a hardware-accelerated graphics engine that offloads drawing operations to the GPU, a vector graphics processor for SVG and complex paths, and a typography engine for shaping and drawing characters with Unicode support. The project provides a cross-platform image codec for encoding and decoding standard image formats into raw pixel data across multiple operating systems. It also enables the development of user interfaces that maintain visual consistency a
Integrates external logic through a foreign function interface specifically for Rust library integration.
PureScript is a statically typed, purely functional programming language that compiles to JavaScript. It is designed as a cross-platform frontend language for building safe web applications, utilizing a static type system and a JavaScript compiler to ensure program correctness across browser and server environments. The language is distinguished by its emphasis on mathematical purity, featuring a robust type system with first-class support for monads. It provides a sophisticated toolset for static verification, including algebraic data types, type classes, and automatic type inference to reje
Maps internal type declarations to external JavaScript values and functions for cross-environment interoperability.
Lean 4 is a functional programming language and interactive proof assistant used to formalize mathematics and verify software correctness. It functions as a dependent type theorem prover and a formal verification tool that allows users to construct mathematical proofs and ensure program correctness. Additionally, it serves as a logic-based source for generating verified datasets used to train and benchmark artificial intelligence reasoning systems. The system distinguishes itself through a small-kernel verification model, where all proofs are verified by a trusted core of basic logical rules.
Enables low-level data exchange and function calls between the functional environment and languages like C or Rust.
This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and asynchronous behavior within Node.js applications. It provides detailed methods for asynchronous tracing, memory diagnostics, and performance analysis to resolve runtime errors and execution bottlenecks. The resource distinguishes itself by covering advanced diagnostic workflows, including the use of flame graphs for CPU profiling, the capture and comparison of heap snapshots for memory leak detection, and the mapping of asynchronous call stacks. It also provides technical guidance on
Enables invoking functions from dynamic link libraries to execute native code without full module wrappers.
Gumbo-parser este o bibliotecă de parsare HTML5 de înaltă performanță scrisă în C99 pur. Transformă markup-ul brut într-un arbore de document structurat prin implementarea regulilor formale de tokenizare a mașinii de stare și de recuperare a erorilor definite în specificația HTML5. Proiectul servește ca instrument de mapare a sursei HTML, legând nodurile parsate înapoi la offset-urile și pointerii lor originali din buffer-ul de intrare. Acest lucru permite urmărirea precisă a locațiilor sursă pentru elementele din arborele de parsare rezultat. Dincolo de procesarea completă a documentelor, biblioteca gestionează fragmente HTML izolate și oferă o interfață de funcții străine (FFI) bazată pe C pentru a permite integrarea și binding-urile de limbaj pentru alte medii.
Provides a stable C API to allow higher-level languages like Python to utilize the core parsing logic.
HelloSilicon este un ghid de programare și tutorial pentru scrierea și depanarea codului assembly pe 64 de biți la nivel scăzut, specific pentru procesoarele Apple Silicon. Servește drept referință de arhitectură pentru interacțiunea cu serviciile kernel macOS și iOS folosind apeluri de sistem și registre hardware. Proiectul oferă instrucțiuni specializate privind interfațarea funcțiilor străine (foreign function interfacing) pentru a face legătura între assembly și limbaje de nivel înalt precum C sau Python. Include, de asemenea, un toolkit pentru configurarea binarilor Mach-O și compilarea binarilor universali și a bibliotecilor dinamice pentru compatibilitate cross-hardware. Materialul acoperă programarea de sistem la nivel scăzut, inclusiv adresarea memoriei, convențiile de apelare și utilizarea depanatoarelor pentru a inspecta registrele și memoria.
Bridges low-level assembly functions with high-level languages like C or Python using platform-specific calling conventions.
Imageflow este o bibliotecă de manipulare a imaginilor și un motor de compoziție de înaltă performanță, disponibil ca bibliotecă compatibilă C, procesor de imagini command-line și server dinamic de procesare a imaginilor. Oferă mijloacele de a decoda, coda și aplica transformări vizuale complexe imaginilor prin interfețe programatice, fișiere de job JSON sau query strings de URL. Sistemul se distinge printr-un pipeline de procesare bazat pe grafuri care permite codarea multi-format într-o singură trecere, generând dimensiuni și formate multiple de imagini dintr-o singură decodare pentru a reduce overhead-ul. De asemenea, dispune de un motor de decodare cu resurse limitate care impune limite stricte de memorie și dimensiune pentru a preveni epuizarea resurselor și atacurile de tip denial-of-service. Proiectul acoperă o gamă largă de capabilități de manipulare, inclusiv redimensionarea, decuparea, rotirea și filtrarea culorilor. Suportă sarcini avansate de compoziție, cum ar fi adăugarea de watermark-uri, generarea de canvas-uri goale și randarea formelor geometrice, alături de corecția automată a culorilor și ajustarea balansului de alb folosind analiza histogramelor. Logica de bază este expusă prin binding-uri de tip foreign function interface pentru integrare cross-language.
Exposes core manipulation logic via foreign function interfaces for integration into multiple programming languages.
GodotSteam is a game engine plugin and API wrapper that integrates the Steamworks SDK into the Godot engine. It serves as a bridge between the engine's scripting layer and platform services, allowing applications to access social features and platform-specific connectivity. The project utilizes a C++ wrapper and a C-compatible foreign function interface to bind the Steamworks SDK. It includes a session manager that handles application ID initialization and enforces that the application is launched through the Steam client to validate ownership and session integrity. The integration covers se
Utilizes a C-compatible foreign function interface to bridge the Godot engine with the Steamworks SDK.