Shibuya.lispテクニカルトーク第7回 (2011/10/22) 小黒直樹さんによる「Lispマシンを作ってみた」です。 次: 「Scheme to C++0x」 (sm15962732) 前: 「括弧への異常な愛情 または私は如何にして心配するのを止めてCommon Lispを愛するようになったか」 (sm15962995) マイリスト: mylist/28336529
この記事は Vim Advent Calendar 2012 の 214 日目の記事です。 昨日は id:manga_osyo さんの Vim で Web ページを :source する でした。 Vim では何も設定せずとも様々なプログラミング言語のためのシンタックスがはじめから提供されています。マニアックなプログラミング言語を編集しようとしていきなりシンタックスで色付けがされてたりするので驚きです。 実は、Vim にはシンタックスだけでなくプラグインみたいなものも言語別にあります。それが ftplugin です。言語によってコメントの仕方やコンパイルエラーの解析*1だけのものからマッピングやコマンドなどの機能まで提供されているものまであります。しかし、これらは help に書かれておらず調べるには自分でソースを読まないといけないのでなかなか知られていないのが現状です。 そこで、今回はこ
普段neocomplcacheを使っています。 最近Pythonを書いていて知ったのですが、補完時にプレビューウィンドウが開きます。 こんな状態から . を入力して補完が始まるとこうなります。 このプレビューウィンドウ。 これが非常に邪魔臭くて消したかったので調べました。 completeoptとomnifunc まずneocomplcacheは関係ありませんでした。 これはVim標準の機能で、:help completeopt に次のように書かれています。 入力モードでの補完|ins-completion|についてのオプションのコンマ区切りの リスト。サポートされている値は次の通り: menu ポップアップメニューで補完候補を表示する。ポップアップメニ ューは、候補が2個以上あり、十分な数の色が使用できるときだ け表示される。|ins-completion-menu|を参照。 menuo
この記事は Vim Advent Calendar 2012 207日目の記事になります。 と、いう発言があったので、わたしが個人的によく使用している unite-source を上げてみたいと思います。 なお、内容がだいぶ偏っているのに加え unite-source には類似している source も多いので『これが一番!』というわけではありませぬ。 [まえがき] unite-source とは unite.vim で使用される拡張モジュールです。 unite.vim は unite-source を使用して様々なデータを出力します。 unite-source は比較的簡単に作成する事が出来るため、多くの人が独自の unite-source を作成して公開しています。 既存の unite-source は下記の記事などでいくつか紹介されています。 unite.vimの使い方まとめ - M
1. 函数プログラミングの集い2011 チュートリゕル 「モナドについて」 株式会社 Preffered Infrastructure 田中 英行 tanaka.hideyuki@gmail.com 2. 自己紹介 • 田中英行 (@tanakh, id:tanakh) • 株式会社 Preferred Infrastructure (PFI) 勤務 – 検索エンジンのゕルゴリズムとか作ってます • Haskell (2004~) • C++ (1998~) • BASIC (1992~) • プログラミングコンテスト愛好家 – ICPC, ICFPC, CodeJam, TopCoder, …
以前 http://rb.blog.pasberth.com/post/29117396682/haskell-parsec こういう記事を書いた。 左再帰というのは、構文解析で、 + の演算子が a + b + c が ((a + b) + c) のように解析されるとき、こんな感じに実装する事: つまり expr 関数の先頭で expr 関数を呼んで再帰するような解析。 Haskell の Parsec の場合、このような構造にすると無限に再帰して、プログラムが終了しなくなってしまう。 それを回避するには、この左再帰を除去するしかない。 参考: http://d.hatena.ne.jp/tanakh/20040731 http://d.hatena.ne.jp/kazu-yamamoto/20110127/1296098875 http://ja.wikipedia.org/wiki/
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
この項目では Haskell に関連する内容に限って圏論の概観を与えることを試みる。そのために、数学的な定義に併せて Haskell コードも示す。絶対的な厳密さは求めない。そのかわり、圏論の概念とはどんなものか、どのように Haskell に関連するかの直感的な理解を読者に与えることを追求する。 3つの対象A, B, C、3つの恒等射, , と、さらに別の射, からなる単純な圏。3つめの要素(どのように射を合成するかの定義)は示していない。 本質的に、圏とは単純な集まりである。これは次の3つの要素からなる。 対象(Object)の集まり。 ふたつの対象(source objectとtarget object)をひとつに結びつける射の集まり。(これらはarrowと呼ばれることもあるが、Haskellではこれは別の意味を持つ用語なので、ここではこの用語を避けることにする。) f がソースオブ
jQuery の extend メソッドは便利なんだが複雑で忘れてしまいがちなのでメモしておく。 jQuery.extend の呼び出しパターンは次の4通り。 $.extend([deep,] target, obj1, [obj2, [obj3, ...]])$.extend([deep,] obj)$.fn.extend([deep,] obj)$(...).extend([deep,] obj) 全てのパターンで第一引数に [deep,] がある。これはオプションの引数で true を指定するとディープコピーしてくれる。 以下では分かりやすくするために deep オプションは省略した一覧を掲載する。 $.extend(target, obj1, [obj2, ...]])$.extend(obj)$.fn.extend(obj)$(...).extend(obj) だいぶシンプルにな
Write Yourself a Scheme in 48 Hours is a featured book on Wikibooks because it contains substantial content, it is well-formatted, and the Wikibooks community has decided to feature it on the main page or in other places. Please continue to improve it and thanks for the great work so far! You can edit its advertisement template. This book proceeds at a very brisk pace, which might occasionally lea
前回、なんか拡張を沢山使っていたが、おまじないのままなのもそろそろまずい感じなので、とりあえず調べてみた。 今回調べた拡張 型系 GADTs ScopedTypeVariables EmptyDataDecls TypeFamilies 型クラス系 MultiParamTypeClasses TypeSynonymInstances FlexibleInstances FlexibleContexts パターン系 BangPatterns PatternGuards ViewPatterns 文字列系 OverloadedStrings TemplateHaskell系 TemplateHaskell QuasiQuotes import系 ImplicitPrelude PackageImports 他言語系 CPP ForeignFunctionInterface 参考にしたところ L
プログラムを書いている中で,多くの式で同じ値を使いまわしていたり,値の変化に一定のパターンが生じていることに気づくかもしれません。こういう時,式に局所的(local,ローカル)な「状態(State)」があれば,プログラムをすっきり書くことができると思うのではないでしょうか? 実際にLispにはsetf(Schemeならset!)という変数の値を書き換える機能があり,OCamlなどのML系の言語には参照型(reference type,リファレンス型)という値の再代入を許す特別な変数を扱う機能があります。 しかし,残念ながらHaskellのように純粋な関数型(purely functional)を標榜している言語には,このような書き換え可能な変数を持つことは基本的に許されていません。書き換え可能な変数があると,「状態」の更新が複数個所で共有され,「プログラムを局所的にではなく,大域的(glo
普段twitterするときはtwitvimというvimscriptを使ってvimからやってるのだけど、たいがいこういうのって自分の思う機能が実装されていなかったり、違う実装になっていたりする。 TwitVim - Twitter client for Vim : vim online TwitVim is a Vim plugin that allows you to post to Twitter and view Twitter timelines. http://www.vim.org/scripts/script.php?script_id=2204 twitvim - Twitter Client for Vim - Google Project Hosting A Twitter client written in Vim script. See http://vim.sour
Welcome to Real World Haskell This is the online home of the book “Real World Haskell”. It is published by O'Reilly Media. The first edition was released in November 2008. We make the content freely available online. If you like it, please buy a copy. Buy online For your convenience, we have included links to the book through sellers in several countries. O'Reilly (USA, UK) Powell's Books (USA) Am
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
Yacc なんかと同じ LALR(1) パーサジェネレータである Yecc を、ちょっと興味がわいてみたので使ってみた。ルール記述ファイルの形式は次のようにまったく Yecc 独自のものとなっている。Yacc よりはわかりやすいかも。 %% コメントは『%%』で始める %% 以下「1個以上」の意味で『…』(3点リーダ) を使う。 %% 宣言の終わりを表す『.』(半角) はそのものを記述する。 %% 終端ルールにおいて、トークン名はルール名と同様に扱われる。 Header 《ヘッダ》 . Expect 《予期される shift/reduce の数》 . Nonterminals 《非終端ルール》 《非終端ルール》… . Terminals 《終端ルール》 《終端ルール》… . Left 《優先度》 《ルール》 《ルール》… . Right 《優先度》 《ルール》 《ルール》… . Unary
Haskellでスタックを利用した加減乗除の計算機を作ってみる¶ モナドはStateの理解から入ったほうが分かりやすいんじゃないかなぁと。よく あるMaybeとかEitherから入るとStateモナドで激はまりしますよね? 僕はStateモナドから入ったほうがいいんじゃないかなーと思ったのでそんな題 材を考えてみました。自分はPerl,Pythonがフィールドなので、状態付き計算か ら入ったほうがすんなり理解できたし、そういうヒトもいるかなと思って書い てみました。 ちなみに文章のほとんどをコミュニティfでもく もくしながら書きました。あそこを静岡Haskellerの聖地にするべく頑張ってい ます。 尚、特に参考になった(というかインスパイアされた)のが、 Haskell の State モナド (1) - 状態を模倣する すごいHaskellたのしく学ぼうの14.3 計算の状態の正体 状
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く