演算子以外の構文記号の一部については,GHCの言語拡張UnicodeSyntaxを有効にするとソースコード中に記述可能です. 詳細については,GHCユーザーガイド 9.3.1 Unicode syntaxをご覧ください. 演算子に関しては,Unicodeの記号が使えますので,たとえば,1章については,以下のような定義モジュールをインポートすれば,そのままコードで表現できます. {-# LANGUAGE UnicodeSyntax #-} module Operators where import qualified Data.List infixr 5 \\ (\\) ∷ Eq a ⇒ [a] → [a] → [a] (\\) = (Data.List.\\) infix 4 ∈, ∉ (∈) ∷ Eq a ⇒ a → [a] → Bool (∈) = elem (∉) ∷ Eq a ⇒
Cコンパイラといえばとてつもなく複雑なプログラムというイメージがあります。ところが、このCコンパイラを(サブセットとはいえ)わずか500行ほどのCのソースコードで実現した「CC500」名付けられたプログラムが公開されています。 ソースコードは可読性を維持するためにつけられた空行やコメントを含めると、実際は750行ほどになるそうですが、それでもこれだけコンパクトなソースコードで実行可能なELFバイナリ(Linux用のバイナリ)を生成できるのは興味深いのではないでしょうか。 以下実際にLinuxでコンパイルしてみました。 自己コンパイルできる このコンパイラはC言語のサブセットで、自分自身のソースコードをコンパイルできるところがおもしろいところです。まず「cc500_1」という実行ファイルを生成します。 gcc cc500.c -o cc500_1 生成された実行ファイル「cc500_1」を使
あいさつ こんにちは. 皆さん如何お過ごしでしょうか. 本日の日付を確認致しましたらもう2014年も残り一月半と改めて認識させられ驚いています. こうも時間の流れが早いと死ぬのもすぐですね. 懸命に生きようと思います. さて今回はHilbertという論理型プログラミング言語を作りました. (カジュアルに作ってるように見えますが、割と本気です.) まだまだやるべき事は本当に多くて、飴ちゃんあげるのでコミッター大募集です. (今ならカントリーマームもつけるのでお願いします.) HP: http://hilbert-lang.org/ja/ Github: https://github.com/gogotanaka/Hilbert 前座 世界で一番ピュアで豊かなプログラミング言語 この言語で仮定されているのは恒真(トートロジー)のみです. (厳密に言うと自然演繹も仮定されていますが.) 当初、自
誰もが一度はイラっとさせられたであろう文字認証「CAPTCHA」。ユーザがコンピュータで無いことを確認するセキュリティ機能のひとつですが、近年、これを解読することは「本のテキスト化」に協力することと同義になりました。同システムの開発者でクラウドソーシングも発案した起業家、Luis von Ahn(ルイス・フォン・アン)氏が、7億5,000万人が参加するプロジェクトが生まれたキッカケを語ります。(TEDxCMU 2011より) 誰もが一度はイラっとさせられるCAPTCHA(キャプチャ) ルイス・フォン・アン氏:このように、ゆがめられた文字の並びを読んで埋めるタイプのウェブフォームを見たことのある人は何人いますか? これを見て本当にいらいらすると感じた人は何人いますか? はい、すばらしいですね。私がこれを発明しました。私がこれを発明したメンバーの1人です。 (会場笑) これはCAPTCHAと呼
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く