<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>https://lib.custis.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%91%D0%BB%D0%BE%D0%B3%3A%D0%94%D0%B8%D0%BC%D0%B0_%D0%A6%D1%8B%D0%B3%D0%B0%D0%BD%D0%BA%D0%BE%D0%B2%2F%D0%A2%D0%B8%D0%BF%D0%B8%D0%B7%D0%B8%D1%80%D1%83%D0%B5%D0%BC_%D0%B7%D0%B0%D0%B4%D0%BD%D0%B8%D1%86%D1%83</id>
		<title>Блог:Дима Цыганков/Типизируем задницу - История изменений</title>
		<link rel="self" type="application/atom+xml" href="https://lib.custis.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%91%D0%BB%D0%BE%D0%B3%3A%D0%94%D0%B8%D0%BC%D0%B0_%D0%A6%D1%8B%D0%B3%D0%B0%D0%BD%D0%BA%D0%BE%D0%B2%2F%D0%A2%D0%B8%D0%BF%D0%B8%D0%B7%D0%B8%D1%80%D1%83%D0%B5%D0%BC_%D0%B7%D0%B0%D0%B4%D0%BD%D0%B8%D1%86%D1%83"/>
		<link rel="alternate" type="text/html" href="https://lib.custis.ru/index.php?title=%D0%91%D0%BB%D0%BE%D0%B3:%D0%94%D0%B8%D0%BC%D0%B0_%D0%A6%D1%8B%D0%B3%D0%B0%D0%BD%D0%BA%D0%BE%D0%B2/%D0%A2%D0%B8%D0%BF%D0%B8%D0%B7%D0%B8%D1%80%D1%83%D0%B5%D0%BC_%D0%B7%D0%B0%D0%B4%D0%BD%D0%B8%D1%86%D1%83&amp;action=history"/>
		<updated>2026-08-24T11:02:21Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.26.4</generator>

	<entry>
		<id>https://lib.custis.ru/index.php?title=%D0%91%D0%BB%D0%BE%D0%B3:%D0%94%D0%B8%D0%BC%D0%B0_%D0%A6%D1%8B%D0%B3%D0%B0%D0%BD%D0%BA%D0%BE%D0%B2/%D0%A2%D0%B8%D0%BF%D0%B8%D0%B7%D0%B8%D1%80%D1%83%D0%B5%D0%BC_%D0%B7%D0%B0%D0%B4%D0%BD%D0%B8%D1%86%D1%83&amp;diff=26172&amp;oldid=prev</id>
		<title>StasFomin в 13:46, 26 мая 2011</title>
		<link rel="alternate" type="text/html" href="https://lib.custis.ru/index.php?title=%D0%91%D0%BB%D0%BE%D0%B3:%D0%94%D0%B8%D0%BC%D0%B0_%D0%A6%D1%8B%D0%B3%D0%B0%D0%BD%D0%BA%D0%BE%D0%B2/%D0%A2%D0%B8%D0%BF%D0%B8%D0%B7%D0%B8%D1%80%D1%83%D0%B5%D0%BC_%D0%B7%D0%B0%D0%B4%D0%BD%D0%B8%D1%86%D1%83&amp;diff=26172&amp;oldid=prev"/>
				<updated>2011-05-26T13:46:41Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;На недавно прошедшем семинаре по Nemerle Владислав Чистяков, его текущий maintainer, впал в ступор, пытаясь определить тип выражения&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
throw NotImplementedException();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
, и был несказанно удивлен, когда удалось написать что-то вроде&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
def a : int = throw NotImplementedException();&lt;br /&gt;
&lt;br /&gt;
def b : void = throw NotImplementedException();&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Честно говоря, его удивление само по себе немного удивительно, учитывая, что он ковырял много разных языков программирования, и Хаскель в том числе.&lt;br /&gt;
&lt;br /&gt;
Таки вот — это выражение сигнализирует, грубо говоря, о том, что во время выполнения некой функции случилась некая задница. Кстати, [http://www.haskell.org/haskellwiki/Bottom именно так её и называют] некоторые вполне серьезные люди — bottom (для краткости иногда обозначая её значком _|_). Исключение — это не единственное проявление задницы, бывает ещё бесконечная рекурсия.&lt;br /&gt;
&lt;br /&gt;
Так какой же она может иметь тип? Ну, очевидно, задница может случиться во время выполнения абсолютно любой функции. А абсолютно любая функция может иметь абсолютно любой тип. То есть — задница может иметь абсолютно любой тип, она полиморфна! А тип того, что может иметь абсолютно любой тип, записывается в C# примерно так:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code-csharp&amp;gt;&lt;br /&gt;
public static T Bottom&amp;lt;T&amp;gt;()&lt;br /&gt;
{&lt;br /&gt;
    throw new NotImplementedException();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code-csharp&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Причина неимоверной популярности задницы именно среди хаскеллистов объясняется ленивостью этого популярного языка. Ленивость — это передача туда-сюда «недовычисленных» выражений. Она, с одной стороны, дает преимущества в модульности кода (эти преимущества в какой-то степени должны быть знакомы и сишарпистам — весь Linq крутится вокруг «слегка ленивых» списков), но, с другой стороны, каждое из недовычисленных выражений может содержать в себе Её. Задницу.&lt;br /&gt;
{{wl-publish: 2011-04-06 20:59:21 +0400 | DmitriyTsygankov }}&lt;br /&gt;
&lt;br /&gt;
[[Категория:CustisWikiToLib]]&lt;/div&gt;</summary>
		<author><name>StasFomin</name></author>	</entry>

	</feed>