Спосіб компіляції замикання вкладених функцій мови TypeScript у проміжну мову CIL платформи .NET

Ключові слова: транслятор, проміжне представлення програми, вкладена функція, замикання, CIL, CLR, .NET, TypeScript.

Анотація

У даній статі запропонований спосіб, який дозволяє ефективно компілювати замикання вкладених функцій з захопленими змінними у проміжну мову CIL платформи .NET. Розглянутий спосіб базується на ідеї зміни проміжного представлення програми шляхом створення класу, який зберігає значення замкнених змінних, і передається останнім аргументом у вкладену функцію. Це дозволяє зв’язати виклик функції з її захопленими змінними. Генерація CIL інструкцій відбувається вже для перетвореної програми. Результатом роботи способу є згенерований код, який демонструє кращу швидкодію, ніж код, що генерується існуючим аналогом.

Посилання

YangSun Lee, SeungWon Na, DaeHoon Hwang, Language Translator for Execution Java programs in .NET [Electronic resource]

Yannis Bres, Bernard Serpette, Manuel Serrano, Compiling Scheme programs to .NET Common Intermediate Language [Electronic resource]

Ivanenko A.R., Marchenko O.I Translation the concatenation of TypeScript string expressions into Common Intermediate Language of .NET platform. [Electronic resource]

Marchenko O.I., Ivanenko A.R. Analysis of TypeScript translation methods into Common Intermediate Language of .NET platform

Jeffrey Richter. CLR via C#. 2012

Marchenko O.I Synopsis of lectures on the subject "Software Engineering-1. Basics of translator design », Kyiv 2013.

Currying. Wikipedia. [Electronic resource] – Access mode:https://en.wikipedia.org/wiki/Currying

Mono.Cecil documentation [Electronic resource] – Access mode: https://cecil.pe/

Опубліковано
2022-07-01
Як цитувати
Іваненко, А., & Марченко, О. (2022). Спосіб компіляції замикання вкладених функцій мови TypeScript у проміжну мову CIL платформи .NET. КОМП’ЮТЕРНО-ІНТЕГРОВАНІ ТЕХНОЛОГІЇ: ОСВІТА, НАУКА, ВИРОБНИЦТВО, (47), 71-75. https://doi.org/10.36910/6775-2524-0560-2022-47-11
Розділ
Інформатика та обчислювальна техніка