Стековый язык: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
Нет описания правки
Нет АИ
 
(не показана 31 промежуточная версия 20 участников)
Строка 1: Строка 1:
{{нет ссылок|дата=2023-05-25}}
'''Стековый язык программирования''' ({{lang-en|stack-oriented programming language}}) — это [[язык программирования]], в котором для передачи параметров используется машинная модель [[стек]]а. Этому описанию соответствует несколько языков, в первую очередь [[Forth]] и [[PostScript]], а также многие [[ассемблер]]ные языки (использующие эту модель на низком уровне - [[Java]], [[Net]]).
'''Стековый язык программирования''' ({{lang-en|stack-oriented programming language}}) — это [[язык программирования]], в котором для передачи параметров используется машинная модель [[стек]]а. Этому описанию соответствует несколько языков, в первую очередь [[Forth]] и [[PostScript]], а также многие [[язык ассемблера|ассемблерные]] языки (использующие эту модель на низком уровне — [[Java]], [[C Sharp|C#]]). При использовании стека в качестве основного канала передачи параметров между словами элементы языка естественным образом образуют фразы ([[Конкатенация|последовательное сцепление]]). Это свойство сближает данные языки с естественными языками.


Выполнение программы в стековом языке программирования представляет собой операции на одном или нескольких стеках, которые могут иметь различное предназначение. Вследствие этого программные конструкции других языков программирования должны быть изменены, прежде чем они могут быть использованы в стековом языке. Некоторые стековые языки программирования используют так называемую [[Обратная польская нотация|«обратную польскую» нотацию]] ({{lang-en|RPN, reverse polish notation}}) или постфиксную нотацию, в которой аргументы или параметры команды должны быть записаны перед самой командой. Например, в обратной польской нотации операция умножения записывается как «2, 3, умножить», а не «умножить, 2, 3» (префиксная или [[Польская нотация|«польская» нотация]]) или «2 умножить на 3» (инфиксная нотация).
Выполнение программы в стековом языке программирования представляет собой операции на одном или нескольких стеках, которые могут иметь различное предназначение. Вследствие этого программные конструкции других языков программирования должны быть изменены, прежде чем они могут быть использованы в стековом языке. Стековые языки программирования используют так называемую [[Обратная польская нотация|«обратную польскую» нотацию]] ({{lang-en|RPN, reverse polish notation}}), или постфиксную нотацию, в которой аргументы или параметры команды должны быть записаны перед самой командой. Например, в обратной польской нотации операция сложения записывается как «2 3 +», а не «+ 2 3» (префиксная или [[Польская нотация|«польская» нотация]]) или «2 + 3» (инфиксная нотация). Это позволяет использовать в полной мере стековые языки при ограниченных аппаратных ресурсах памяти в [[embedded|контроллерах]] встроенных систем.

== См. также ==
* [[Конкатенативный язык программирования]]
* [[Forth]]
* [[Factor]]
* [[FALSE]]
* [[DSSP]]


== Ссылки ==
== Ссылки ==
* [http://brainslugs.blogspot.com/2007/06/stack-languages.html «Блог Тру Программиста» про стековые языки программирования] {{проверено|28|1|2009}}

[[http://brainslugs.blogspot.com/2007/06/stack-languages.html | Блог про стековые языки программирования]]


{{compu-stub}}
{{compu-stub}}


[[Категория:Языки программирования]]
[[Категория:Языки программирования]]
[[Категория:Стек]]

[[Категория:Парадигмы программирования]]
[[en:Stack-oriented programming language]]
[[es:Lenguaje de programación basado en pila]]

Текущая версия от 10:09, 25 мая 2023

Стековый язык программирования (англ. stack-oriented programming language) — это язык программирования, в котором для передачи параметров используется машинная модель стека. Этому описанию соответствует несколько языков, в первую очередь Forth и PostScript, а также многие ассемблерные языки (использующие эту модель на низком уровне — Java, C#). При использовании стека в качестве основного канала передачи параметров между словами элементы языка естественным образом образуют фразы (последовательное сцепление). Это свойство сближает данные языки с естественными языками.

Выполнение программы в стековом языке программирования представляет собой операции на одном или нескольких стеках, которые могут иметь различное предназначение. Вследствие этого программные конструкции других языков программирования должны быть изменены, прежде чем они могут быть использованы в стековом языке. Стековые языки программирования используют так называемую «обратную польскую» нотацию (англ. RPN, reverse polish notation), или постфиксную нотацию, в которой аргументы или параметры команды должны быть записаны перед самой командой. Например, в обратной польской нотации операция сложения записывается как «2 3 +», а не «+ 2 3» (префиксная или «польская» нотация) или «2 + 3» (инфиксная нотация). Это позволяет использовать в полной мере стековые языки при ограниченных аппаратных ресурсах памяти в контроллерах встроенных систем.