Інтерпретована мова програмування
Інтерпретована мова програмування — мова програмування, в якій початковий код програми не перетворюється попередньо повністю у машинний код для виконання, як у компільованих мовах, а виконується рядок за рядком з допомогою спеціальної програми-інтерпретатора.
Головні відмінності між компільованими й інтерпретованими мовами
- швидкість виконання програми, компільованої в машинний код, перевершує швидкість інтерпретованої програми, як правило, в десятки і сотні разів;
- у разі використання компілятора, при внесенні змін у початковий код програми, перш ніж ці зміни можна буде побачити в роботі програми, необхідно виконати компіляцію сирцевого тексту.
У загальному випадку, будь-яка мова може бути компільованою і інтерпретованою, так що це розділення належить до практики застосування мови, а не є її властивістю. При цьому, для багатьох мов існує відмінність у продуктивності між компільованою та інтерпретованою реалізацією.
Велика кількість мов, включаючи BASIC, C, Lisp, Pascal і Python, мають обидві реалізації. У Java використовується JIT-компіляція для генерації машинного коду, хоча спочатку він переводиться в інтерпретавану форму. Мови Microsoft .NET Framework компілюються в Common Intermediate Language, яка під час виконання компілюється в машинний код. Більшість реалізацій Lisp дозволяють змішувати обидва види коду.
- APL
- ASP
- BASIC (деякі версії)
- COBOL
- ECMAScript
- Освітні та системні рішення
- Euphoria (інтерпретована чи компільована)
- Forth
- Game Maker Language
- Inform
- Lava
- Madness Script
- Perl
- PHP
- Python
- Lisp
- MUMPS (новітні версії компільовані)
- R
- REXX
- Ruby
- JRuby (реалізації Java в Ruby)
- Smalltalk
- Scripting languages
- Електронна таблиця
- S
- Tcl
Програма helloworld на мові Python може містити лише один рядок:
print("Hello world!")
Інтерпретатор цієї мови (який сам, у свою чергу, написаний на звичайній мові програмування) зможе виконати цю програму і вивести результат.
Ця стаття не містить посилань на джерела. (листопад 2010) |
Це незавершена стаття про мови програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |