<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Сергей Соловьев — Типизируем eval и new Function: JavaScript-интерпретатор на типах TypeScript</title>
        <link>https://peertube.lightnode.ru/videos/watch/5709a726-c251-4190-9d3a-362d8a813dee</link>
        <description>Подробнее о конференции HolyJS: https://jrg.su/EM4wwV — — Скачать презентацию с сайта HolyJS — https://jrg.su/wtVDyk Многие слышали, что система типов TypeScript является Тьюринг-полной. Это значит, что с ее помощью можно реализовать любой конечный алгоритм. Реализация логики в типах – это не просто развлечение, а отличный способ на практике почувствовать возможности и ограничения системы типов, почелленджить свои навыки и узнать полезные приемы для повседневной работы. Type-level программирование не только помогает писать более «умные» и компактные типы, но также развивает алгоритмическое мышление. В этом докладе мы попробовали строго типизировать eval и конструктор Function так, чтобы результат вычисления был выведен компилятором TypeScript еще до запуска самой программы. То есть реализовали интерпретатор для подмножества JavaScript на уровне типов! Попутно поговорили о Тьюринг-полноте языков, устройстве движков JS и функциональном подходе к программированию.</description>
        <lastBuildDate>Mon, 27 Jul 2026 01:53:04 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>PeerTube - https://peertube.lightnode.ru</generator>
        <image>
            <title>Сергей Соловьев — Типизируем eval и new Function: JavaScript-интерпретатор на типах TypeScript</title>
            <url>https://peertube.lightnode.ru/client/assets/images/icons/icon-96x96.png</url>
            <link>https://peertube.lightnode.ru/videos/watch/5709a726-c251-4190-9d3a-362d8a813dee</link>
        </image>
        <copyright>All rights reserved, unless otherwise specified in the terms specified at https://peertube.lightnode.ru/about and potential licenses granted by each content's rightholder.</copyright>
        <atom:link href="https://peertube.lightnode.ru/feeds/video-comments.xml?videoId=5709a726-c251-4190-9d3a-362d8a813dee" rel="self" type="application/rss+xml"/>
    </channel>
</rss>