Maciek Próchniak
Software engineer with 20 years of experience. During those decades, I’ve been interested in systems integration, functional programming, stream processing, Java, Scala, and (lately) Rust. I’ve been working as a developer, architect, and team lead in both smaller and larger projects, including creating Nussknacker.
How to call in a foreign language? With an Interface!
When we think about an application or a service, it is typically written in a specific programming language, such as Python, Java, or TypeScript. However, sometimes one language is just not good enough. It can be pluggability, performance, some unique libraries or just the team preferences. How can we combine C with Java or Rust with Python? We’ll explore different ways in which languages can communicate with each other in a single process, such as scripting, FFI, and Web Assembly. How do they work under the hood (and what is the lingua franca?) What are the benefits, drawbacks and caveats? In Python, Rust, NodeJS, Java, and maybe more!