<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<oembed>
  <author_name>lethevert</author_name>
  <author_url>https://blog.hatena.ne.jp/lethevert/</author_url>
  <blog_title>lethevert is a programmer</blog_title>
  <blog_url>https://lethevert.hatenadiary.org/</blog_url>
  <categories>
  </categories>
  <description>一意型にも非一意型にもどちらにも適用可能なように型クラスを作るには、属性変数を使えばよいということに気づいた。 つまり、これまでこのように書いていたものを、 class (|&gt;*) infixl 0 a b :: !*a !b -&gt; *a 次のように書き直せば、どちらにも使えるようになる。 class (|&gt;*) infixl 0 a b :: !u:a !b -&gt; u:a ただし、問題は、CleanのFile型は、*FileとFileで適用可能な可能な関数が違って、間違えると実行時エラーになる（型システムで許されていても！）ということだが、これはこの際無視しよう。（ライブラリのデザインの方を…</description>
  <height>190</height>
  <html>&lt;iframe src=&quot;https://hatenablog-parts.com/embed?url=https%3A%2F%2Flethevert.hatenadiary.org%2Fentry%2F20070304%2Fp3&quot; title=&quot;Concurrent Clean : 一意型と型クラス - lethevert is a programmer&quot; class=&quot;embed-card embed-blogcard&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; style=&quot;display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;&quot;&gt;&lt;/iframe&gt;</html>
  <image_url></image_url>
  <provider_name>Hatena Blog</provider_name>
  <provider_url>https://hatena.blog</provider_url>
  <published>2007-03-04 00:00:02</published>
  <title>Concurrent Clean : 一意型と型クラス</title>
  <type>rich</type>
  <url>https://lethevert.hatenadiary.org/entry/20070304/p3</url>
  <version>1.0</version>
  <width>100%</width>
</oembed>
