Інтерпретована мова програмування

Інтерпретована мова програмування мова програмування, в якій сирцевий код програми не перетворюється попередньо повністю у машинний код для виконання, як у компільованих мовах, а виконується рядок за рядком з допомогою спеціальної програми-інтерпретатора.

Головні відмінності між компільованими й інтерпретованими мовами

  • швидкість виконання програми, компільованої в машинний код, перевершує швидкість інтерпретованої програми, як правило, в десятки і сотні разів;
  • у разі використання компілятора, при внесенні змін у сирцевий код програми, перш ніж ці зміни можна буде побачити в роботі програми, необхідно виконати компіляцію сирцевого тексту.

У загальному випадку, будь-яка мова може бути компільованою і інтерпретованою, так що це розділення належить до практики застосування мови, а не є її властивістю. При цьому, для багатьох мов існує відмінність у продуктивності між компільованою та інтерпретованою реалізацією.

Велика кількість мов, включаючи BASIC, C, Lisp, Pascal і Python, мають обидві реалізації. У Java використовується JIT-компіляція для генерації машинного коду, хоча спочатку він переводиться в інтерпретавану форму. Мови Microsoft .NET Framework компілюються в Common Intermediate Language, яка під час виконання компілюється в машинний код. Більшість реалізацій Lisp дозволяють змішувати обидва види коду.

Інтерпретовані мови програмування

Приклад

Програма helloworld на мові Python може містити лише один рядок:

 print "Hello world!"

Інтерпретатор цієї мови (який сам, у свою чергу, написаний на звичайній мові програмування) зможе виконати цю програму і вивести результат.

Див. також

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.