> [!INFO] PyO3
> Python 바인딩을 제공하는 Rust FFI입니다.
## FFI (Foreign Function Interface)
서로 다른 프로그래밍 언어 간에 함수를 호출할 수 있게 해주는 인터페이스.
### PyO3와 FFI 관계
```
Python <- C ABI <- Rust
(CPython API) (PyO3가 래핑)
```
- Python은 C로 작성됨 (CPython)
- Rust는 C ABI와 호환되는 코드를 생성할 수 있음
- PyO3는 이 과정을 매크로로 추상화해서 직접 C 코드를 작성할 필요 없게 해줌
---
- [Github - PyO3/pyo3](https://github.com/PyO3/pyo3?tab=readme-ov-file#pyo3)