<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Дизайн языков программирования on TrustLang</title>
		<link>https://trust-lang.net/ru/blog/language-design/</link>
		<description>Recent content in Дизайн языков программирования on TrustLang</description>
		<generator>Hugo</generator>
		<language>ru</language>
		
		
		
		
			<atom:link href="https://trust-lang.net/ru/blog/language-design/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Если вы думаете, что знаете, чем отличается «Expression» от «Statement», то, скорее всего, вы ошибаетесь</title>
				<link>https://trust-lang.net/ru/blog/language-design/expression-statement/</link>
				<pubDate>Sun, 02 Aug 2026 00:00:00 +0000</pubDate>
				<guid>https://trust-lang.net/ru/blog/language-design/expression-statement/</guid>
				<description>&lt;p&gt;Я занимаюсь изучением &lt;a href=&#34;https://trust-lang.net/ru/blog/comparison/cpp-rust-vs-python/&#34;&gt;синтаксиса языков программирования&lt;/a&gt; и пытаюсь отделить фундаментальные закономерности от исторических случайностей. Одна из таких случайностей - почти повсеместное использование терминов &lt;strong&gt;выражение&lt;/strong&gt; (expression) и &lt;strong&gt;инструкция&lt;/strong&gt; (statement) при описании и классификации синтаксиса языков программирования.&lt;/p&gt;&#xA;&lt;p&gt;Интуитивно кажется, что &lt;code&gt;2 + 2&lt;/code&gt; и &lt;code&gt;if (x) { foo(); }&lt;/code&gt; - это совершенно разные сущности, но при более глубоком анализе оказывается, что подобное разделение искусственное и возникло из-за архитектурных особенностей вычислительных машин почти полвека назад и с тех пор просто «переходит» из языка в язык.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Строительные блоки языков программирования</title>
				<link>https://trust-lang.net/ru/blog/language-design/building-blocks/</link>
				<pubDate>Fri, 03 May 2024 00:00:00 +0000</pubDate>
				<guid>https://trust-lang.net/ru/blog/language-design/building-blocks/</guid>
				<description>&lt;p&gt;В результате обратной связи по статье с &lt;a href=&#34;https://trust-lang.net/ru/blog/theory/structured-programming/&#34;&gt;размышлениями о структурном программировании&lt;/a&gt;, было много отзывов и споров в комментариях, за которые я хочу сказать всем большое спасибо.&lt;/p&gt;&#xA;&lt;p&gt;И под впечатлениями от обсуждения предыдущей статьи я задался вопросом, а существует ли минимальный набор лексем, операторов или синтаксических конструкций, с помощью которых можно построить произвольную грамматику для современного языка программирования общего назначения?&lt;/p&gt;&#xA;&lt;h2 id=&#34;ведение&#34;&gt;Ведение&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d0%b5&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Практически все языки программирования строятся либо по принципу подобия (сделать как вот этот, только со своим блекждеком), либо для реализации какой-то новой концепции (модульность, чистота функциональных вычислений и т.д.). Либо и то и другое одновременно.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Возможное решение проблемы ссылок в языках программирования</title>
				<link>https://trust-lang.net/ru/blog/language-design/reference-solution/</link>
				<pubDate>Tue, 23 Apr 2024 00:00:00 +0000</pubDate>
				<guid>https://trust-lang.net/ru/blog/language-design/reference-solution/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://habrastorage.org/webt/xl/4d/uy/xl4duyyseltgpsqlhu09_vp-zvk.jpeg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Любому программисту знакомо понятие &amp;ldquo;ссылка&amp;rdquo;. Под этим термином обычно понимают небольшой объект, главная задача которого обеспечить доступ к другому объекту, физически расположенному в другом месте. Из-за этого ссылки удобно использовать, они легко копируются, и с их помощью очень просто получить доступ к объекту, на который эта ссылка ссылается и можно получить доступ к одним и тем же данным из разных мест программы.&lt;/p&gt;&#xA;&lt;p&gt;К сожалению ссылки, точнее ручное управление памятью, является наиболее частой причиной  возникновения различных ошибок и уязвимостей в программном обеспечении. А все попытки автоматического управления памятью с помощью различных менеджеров упираются в необходимость контролировать создание и удаление объектов, а так же периодически запускать сборщик мусора, что отнюдь не положительно сказывается на производительности приложений.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Новый язык программирования</title>
				<link>https://trust-lang.net/ru/blog/language-design/trust-lang/</link>
				<pubDate>Fri, 18 Feb 2022 00:00:00 +0000</pubDate>
				<guid>https://trust-lang.net/ru/blog/language-design/trust-lang/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://trust-lang.net/ru/blog/langs.jpeg&#34; alt=&#34;КДПВ&#34;&gt;&lt;/p&gt;&#xA;&#xA;&#xA;&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;&#xA;&lt;p&gt;Внимание!!!&lt;/p&gt;&#xA;&lt;p&gt;Данная статья содержит описание синтаксиса NewLang предыдущей версии.&lt;/p&gt;&#xA;&lt;p&gt;Актуальную версию синтаксиса языка можно посмотреть &lt;a href=&#34;https://trust-lang.net/ru/docs/&#34;&gt;тут&lt;/a&gt;.&lt;/p&gt;&#xA;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;Более года назад я начал публикацию статей с описанием особенностей нового языка программирования.&#xA;С тех пор утекло много воды, было протестировано множество идей, в итоге несколько раз все поменялось кардинальным образом&#xA;и сейчас представляю на суд читателей описание предфинальной версии языка и его особенностей.&lt;/p&gt;&#xA;&lt;p&gt;Данная статья предназначена в первую очередь для проверки основных концепций нового языка программирования, а также для получения обратной связи от читателей Хабра.&#xA;Ведь согласно наблюдению &lt;a href=&#34;https://habr.com/ru/post/539674/&#34;&gt;Хабр-ума палата&lt;/a&gt;, не замыленный взгляд со стороны очень сильно помогает в проработке новых идей.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Необычная концепция синтаксиса языка программирования</title>
				<link>https://trust-lang.net/ru/blog/language-design/unusual-prog/</link>
				<pubDate>Mon, 24 May 2021 00:00:00 +0000</pubDate>
				<guid>https://trust-lang.net/ru/blog/language-design/unusual-prog/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://trust-lang.net/ru/blog/langs.jpeg&#34; alt=&#34;КДПВ&#34;&gt;&lt;/p&gt;&#xA;&#xA;&#xA;&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;&#xA;&lt;p&gt;Внимание!!!&lt;/p&gt;&#xA;&lt;p&gt;Данная статья содержит описание синтаксиса NewLang предыдущей версии.&lt;/p&gt;&#xA;&lt;p&gt;Актуальную версию синтаксиса языка можно посмотреть &lt;a href=&#34;https://trust-lang.net/ru/docs/&#34;&gt;тут&lt;/a&gt;.&lt;/p&gt;&#xA;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;Хочу представить на обсуждение читателей немного необычный концепт языка программирования, в котором отсутствует проблема,&#xA;присущая практически всем промышленным языкам -  постоянное увеличение сложности синтаксиса языка из-за его естественного развития по мере выхода новых версий и добавления новых фич.&#xA;Эта проблема описана в статье &lt;a href=&#34;https://trust-lang.net/ru/blog/programming/complex-prog/&#34;&gt;&amp;ldquo;Простое сложное программирование&amp;rdquo;&lt;/a&gt; и &lt;a href=&#34;https://trust-lang.net/ru/blog/language-design/lang-final/&#34;&gt;Какая &amp;ldquo;идеальная&amp;rdquo; цель развития у языков программирования?&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;После нескольких экспериментов с синтаксисом, хочется проверить выработанную идею на широкой аудитории &lt;a href=&#34;https://habr.com/ru/companies/timeweb/articles/558738/&#34;&gt;Хабра&lt;/a&gt;, которая как нельзя лучше подходит для этих целей.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Какая «идеальная» цель развития у языков программирования?</title>
				<link>https://trust-lang.net/ru/blog/language-design/lang-final/</link>
				<pubDate>Wed, 07 Apr 2021 00:00:00 +0000</pubDate>
				<guid>https://trust-lang.net/ru/blog/language-design/lang-final/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://trust-lang.net/ru/blog/language-design/lang-final/lang-final.jpeg&#34; alt=&#34;КДПВ&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;С постоянной периодичностью появляется информация о выходе новой версии того или иного языка программирования.&#xA;И с каждой новой версией расширяются его возможности, добавляются новые синтаксические конструкции или иные улучшения.&lt;/p&gt;&#xA;&lt;p&gt;И это очень сильно напоминает развитие технологий, как и в любой другой области техники.&#xA;Когда с очередным этапом совершенствуются создаваемые творения.&#xA;Быстрее, выше, сильнее … и одновременно значительно сложнее.&lt;/p&gt;&#xA;&lt;p&gt;Об этой проблеме меня заставила задуматься первоапрельская статья &lt;a href=&#34;https://habr.com/ru/post/550270/&#34;&gt;«Доказательное программирование»&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Понятно, что дата публикации статьи говорит сама за себя.&#xA;Тем не менее, новые стандарты С++, постоянно выходящие спецификации Java или новый синтаксис у PHP 8,&#xA;невольно заставляют задуматься, а в нужную ли сторону идет развитие языков программирования?&#xA;Ведь большинство нововведений добавляют сложность в основной рабочий инструмент и решая одни проблемы, неявно добавляя множество других.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Интернациональное программирование на естественных языках</title>
				<link>https://trust-lang.net/ru/blog/language-design/inter-prog/</link>
				<pubDate>Sat, 05 Dec 2020 00:00:00 +0000</pubDate>
				<guid>https://trust-lang.net/ru/blog/language-design/inter-prog/</guid>
				<description>&lt;p&gt;&lt;img src=&#34;https://trust-lang.net/ru/blog/langs.jpeg&#34; alt=&#34;КДПВ&#34;&gt;&lt;/p&gt;&#xA;&#xA;&#xA;&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;&#xA;&lt;p&gt;Внимание!!!&lt;/p&gt;&#xA;&lt;p&gt;Данная статья содержит описание синтаксиса NewLang предыдущей версии.&lt;/p&gt;&#xA;&lt;p&gt;Актуальную версию синтаксиса языка можно посмотреть &lt;a href=&#34;https://trust-lang.net/ru/docs/&#34;&gt;тут&lt;/a&gt;.&lt;/p&gt;&#xA;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;В последнее время часто попадаются на глаза статьи о новых языках программирования,&#xA;а так же различные рейтинги и прогнозы, связанные с популярностью компьютерных языков.&lt;/p&gt;&#xA;&lt;p&gt;Заявляют о себе и новые &lt;a href=&#34;https://habr.com/ru/company/testo_lang/blog/521682/&#34;&gt;инструментальные средства&lt;/a&gt;,&#xA;которые в своей работе используют  собственные форматы описания конфигурационных файлов или последовательности выполняемых команд,&#xA;которые так же очень сильно приближает их к понятию «язык программирования».&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
