Skip to content
0:00 / 0:00

#ffi#roc#interop

Calling Functions Across Languages • Richard Feldman • GOTO 2023

GOTO Conferences

1M subscribers • 96 videos on Hallway • Conference channel

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Richard Feldman, Functional Programming Language Expert

Intermediate. Assumes working knowledge.

16K views3 years ago1 recommendation

Programming languagesSystems programmingLanguage design and type systemsPerformance and optimization

Richard Feldman explains how to call functions across different programming languages within the same process using foreign function interfaces.

This presentation was recorded at GOTO Chicago 2023. #GOTOcon #GOTOchgo gotochgo.com Richard Feldman - Functional Programming Language Expert & Author of "Elm in Action" @rtfeldman @SoftwareUnscripted RESOURCES roc-lang.org twitter.com/sw_unscripted Richard twitter.com/rtfeldman github.com/rtfeldman linkedin.com/in/rtfeldman ABSTRACT Suppose you want a new feature which requires a lower-level language to get the performance it needs. Or maybe your code is already low-level, but a new feature could be built much faster in a higher-level language without a noticeable performance hit. Or maybe you want to migrate incrementally from one language to another. Whatever the motivation, calling functions across languages while staying within the same process is commonly overlooked in favor of more familiar techniques like spinning up a separate server for the other language to use, or at least another process. These can not only introduce performance problems, but also an infrastructure maintenance burden that can be avoided with direct calls. This talk explores the technique of directly calling functions across languages by looking at how it works in several different languages, the tradeoffs compared to other techniques like separate servers and processes, and when and why you might want to use it. Come see how calling functions across languages could benefit your project! [...] Download slides and read the full abstract here: gotochgo.com/2023/sessions/2576 RECOMMENDED BOOKS Richard Feldman • Elm in Action • amzn.to/387kujI Tim McNamara • Rust in Action • amzn.to/3ux2R9u Cristian Salcescu • Functional Programming in JavaScript • amzn.to/3y75jBS twitter.com/GOTOcon linkedin.com/company/goto- facebook.com/GOTOConferences #StaticTyping #DynamicTyping #FunctionalProgramming #Roclang #Rustlang #Golang #Elmlang #Scala #Java #Fortran #Programming #ProgrammingLanguage #SoftwareEngineering #RichardFeldman Looking for a unique learning experience? Attend the next GOTO conference near you! Get your ticket at gotopia.tech Sign up for updates and specials at gotopia.tech/newsletter SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily. youtube.com/user/GotoConferences/?sub_confirmation=1

Why it's here

1 person recommends this

What people say. Recommended as an exceptionally clear explanation of language interop and calling functions across languages.

u/qrzychu69in r/dotnet • Recommends

On “Seriously wtf is .NET I have been a C# programmer for over 5 years and I don't know”

…n they call each other - it's the same memory, same assembly, same process. That means that it's the same tools and the same debugger. You can step into F# function from C# function even with vs code or vim - is just how it works. If you are doing interop between things like c# and c++, there is a whole dance of type translations you have to do. link to this video Watch this, it explains it so well, my mom understood it. I hope this helps :D…