Компилируемые языки программирования
Компилируемые языки переводят весь исходный код в машинные инструкции до того, как пользователь запустит приложение.
Compilers: Clang, GCC, Rustc, GHC (Haskell). Characteristics: 1. High Performance. 2. Low-level Hardware Access. 3. Strong Static Typing. 4. Binary Portability (requires recompilation for different CPUs). Contrasted with: Interpreted Languages (Python, Ruby) and Bytecode/JIT Languages (Java, C#).
graph LR
Center["Компилируемые языки программирования"]:::main
Rel_non_custodial["non-custodial"]:::related -.-> Center
click Rel_non_custodial "/terms/non-custodial"
Rel_crypto_wallet["crypto-wallet"]:::related -.-> Center
click Rel_crypto_wallet "/terms/crypto-wallet"
Rel_multisig_wallet["multisig-wallet"]:::related -.-> Center
click Rel_multisig_wallet "/terms/multisig-wallet"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Простыми словами
Это как построить дом по чертежу. Сначала архитектор (компилятор) проверяет, не упадет ли дом, все ли кирпичи на месте, и выдает рабочим готовый план. Рабочим (процессору) остается только быстро все построить, не задавая лишних вопросов.
🤓 Expert Deep Dive
Для разработчиков важен выбор между статической и динамической линковкой. В компилируемых языках часто используется 'LLVM Infrastructure' — модульный набор инструментов, который позволяет легко адаптировать язык под новые архитектуры чипов (например, с x86 на Apple M1). В блокчейн-разработке Rust стал стандартом для написания смарт-контрактов (Solana, Polkadot) именно благодаря комбинации высокой производительности и безопасности, которую обеспечивает его компилятор.