サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Switch 2
tanakh.jp
これはRust その2 Advent Calendarの16日目の記事です。日付と投稿日がかみ合っていなくてすみません。 概要 PEZY-SCというメニーコアプロセッサーでRustのコードを動かしてみたというお話です。 PEZY-SCとは PEZY-SCとは、PEZY Computingが開発したメニーコアプロセッサーです。1024コアのRISCプロセッサーで、各コア8スレッドのSMTになっており、トータルで8192スレッドが同時に動きます。ピーク性能は倍制度1.5TFlops、単精度3TFlopsで、これを用いたシステムが電力効率の良いスパコンとしてGreen500などで良い成績を収めています。現在さらに性能を向上させたPEZY-SC2を開発中です。 高い演算スループットと電力効率を目指しながらも、SIMDを用いない完全なMIMDプロセッサーで、ある意味コンピューター科学の常識に反してい
現在 PEZY Computing ではハードウェアエンジニアの新しい職種を募集しているらしいです。 http://pezy.co.jp/career/index.html 詳しくはこちら。 先日社長から前回のブログ記事が反響がすごかったよ、みたいなことを言われて、えっ、このブログばれてるの!?ということで僕がごちうさファンであることも無事理解していただいたようです。なんかハードウェアエンジニアの求人ページの職種増やしたから、宣伝しといて、ということなので、宣伝させていただきます。ところで、求人ページが縦に長くなった影響で、レイアウトが崩れていませんか。 まあなんでしょう。入って数か月の僕には、この会社はこうです!みたいな宣伝やら、そういうのはうまくできないのですが、三大「プログラミングをやっているなら、いつかは作りたいもの」であるところの、CPU、OS、コンパイラのうち二つを作れる会社は
僕のTwitterをご覧になっている方はご存知かもしれませんが、ワケあって、前職を辞めて、今年の九月から株式会社PEZY Computingで働いております。 どういう会社なのかよく知らない人も多いと思いますので、簡単に説明しますと、超メニーコアのプロセッサを作っていて、それを搭載するボードとか、それを液浸冷却するシステムとかを作る関連会社があったりして、スパコンとして仕立て上げたりしているような、そんな会社です。なんか積層メモリ作ってる関連会社もあるみたいです。えっ、そんな会社が日本にあるの?って思われるかもしれませんが、実在している会社ですし、実際にモノもできているからたぶん本当にあります。 僕がPEZYのことを初めて知ったのはちょうど去年の今頃の、「いろいろ」あってつらい状況にあるときでした。その時に@nushioさんがすごく心配してくれて、誕生日やらなにやらを祝ってくれたりしたので
これは 友利奈緒 Advent Calendar 2015 の20日目の記事です。必死で未来から書いています。 友利奈緒とコミュニケーションするアプリ のようなものを作りました。たぶんこの辺にソースを置くと思います。バイナリはたぶんもうしばらくしたら配布するかもしれませんが、こんなツール使いたいと思う人があんまりいない気がするので、配布しないかもしれません。 追記:バイナリ配布しました。使ってみたいという奇特な方は、https://github.com/tanakh/tomorinask/releasesこちらからお試しください。 最近困っていたこと:Askリニューアル問題 ところで、Ask.fm という、どこからともなく質問がたくさんやってくる謎のサービスがあるのですが、このサイトが先日デザインをリニューアルしました。それはそれでいいのですが、大幅にリニューアルされてしまったせいで、僕に
前の記事を書いてから随分時間が開いてしまいましたが、 今年の二月の終わり頃に、Tsuru Capitalというところに就職しました。 この記事を見てかどうかはわかりませんが、先方からお誘いいをただいて、 これは渡りに船とばかりに働かせていただくことになりました。 いろんな方にご心配をいただきまして、大変ありがとうございました。 身体面の健康も随分良くなりまして、今では元気に暮らしております。 Tsuru Capitalは自動株取引の会社で、ご存じの方はあまり多くないかもしれませんが、 Haskellでシステムを開発していて、日本国内に数えるほどしかないHaskellで仕事できる会社の一つです。 当然ながら、私も毎日Haskellを書いています。 会社で働いてる人もほぼ全員Haskellが書けます。 なんというか、Haskellで開発しているからそれは当たり前なんですが、 これが当たり前って
TLE 2015というプログラミングコンテスト http://felicity.iiit.ac.in/contest/tle/ で香風智乃さんが優勝されました。 春休みの宿題の良い息抜きになったそうです。 記事を言付かっておりますので、ここに掲載させていただきます。 雑感 Twitterにリンクが流れてきたのでやってみたのですが、割と面白かったです。 Distinct Substrings 与えられた文字列に対して相異なる部分文字列の数を数えるだけの問題なのですが、 スコアが「提出したソースコードの異なる部分文字列の数 / 提出したソースコードの長さの2乗」で計算されます。 なんだこの問題…。 適当に書いたコードの後ろにランダムな文字列をくっつけて送ったら、 理論値の0.5に近いスコアが簡単にでたので、そのまま放置です。 Find the GCD 2000桁ぐらいの整数2つが与えられるので
僕が6年間ほど勤めた会社を、 見送られるともなくひっそりと退社したのは、 11月末のことでした。 ここ1年半は体調の問題から休職をしていたのですが、 大学院時代の立ち上げから数えると更に2年、 思えば随分と長いこと関わった会社を、 こういう形で辞めることになるのは、 やはり本意であったとは言えないでしょうね。 決まってから退職日までが2日という、 準備をするにはいささか短い期間ではあったので、 今の一番の懸案は、 当面の生活をどうしたものだろうかという、 非常に刹那的な問題でございます。 これを読んでくださっている方の中で、 こんなしょうもない記事を読んでもなお僕に興味があるという酔狂な方がもしいらっしゃいましたら、 にご連絡を頂けると嬉しいです。 自己紹介などは http://tanakh.jp/about.html ここに多少まとめてあります。 かくして職を失った僕は、 これまで考えて
http://www.well-typed.com/blog/90/ foldlに関するこの記事(英文)が面白かったので、勝手翻訳しました。 foldlなんとかなるといいですね。 foldlを直す foldl 関数は壊れている。壊れているとみんなが知っている。 四半世紀近く壊れたままだ。ついにこれを修正する時が来た! 今日、私はPrelude.foldlをData.List.foldl'として知られる実装で再定義することを提案する。 foldlは壊れている! 既にご存知だとは思うが、念のため… Haskellerが必ずfoldlではなく、foldrやfoldl'を使うように勧めてくることにお気づきだろうか? 例えばReal World Haskellでは次のように言っている。 `foldl`のサンクの挙動のため、実アプリではこの関数を使わないようにするのが望ましい。 特に問題がない場合でも
「あずにゃん Advent Calendar」ってなんやねん! 登録したのはいいものの、いったい何を書いたものかと迷っているうちに、クリスマスになってしまった。 困った。そもそも「あずにゃん Advent Calendar」とは何なのか。何なのか。 改めて考えると実に奇妙な企画だ。難解極まる。 今の私にはどう記事を書いていいものか難しすぎる。 うんうんと悩み唸ること一週間近く。 だが待てよ。 もしかすると、これがすなわちあずにゃんが如何に魅力的であるのかということを、 ある種自己言及的に示唆ているのではないか。 そんな風に昨日あたりから思い始めたのだった。 そういう訳で、それを少しまとめて書いてみようと思う。 Advent Calendarができるということは、どういうことなのか? すなわち25の記事が書かれるということである(あずにゃん Advent Calendarは記事が埋まっていな
本記事はつらぽよAdvent Calendarのために書かれました。 つらぽよの日々 つらいことがありました。 それは、とてもつらかったので、 これまで殊更につらいことから避けてきた、 脆く弱い私の心は、ぐずぐずと豆腐のように崩れていきました。 心の痛みとは、比喩でなく、実際に胸の奥に疼痛を覚えるものだと知りました。 痛くて、痛くて、涙がとめどなく溢れ、 しかしそれから一週間程すると、それもよくわからなくなりました。 体調はすこぶる悪く、胃のあたりが絶えずむかむかとして、 ここ数年の投薬治療により寛解したと思っていた不安障害が一気に再燃していました。 何もできないので、ずっと寝ていました。 一日の半分以上を寝て過ごすような日々を、一か月ほど過ごしていました。 病院に行ってその旨を告げると、薬が増えました。 薬が増えると、徐々に体調は上向きになっていきました。 二か月ほど経った頃には、慢性的
Copyright (c) 2011-2015, Hideyuki Tanaka (@tanakh) Site proudly generated by Hakyll. Served by Mighttpd2. Tools are made with Fay. This site uses Twitter Bootstrap, and theme from Bootswatch.
周囲にWindowsユーザがめっきり減ってきた昨今ですが、 Windowsユーザの皆様はいかがお過ごしでしょうか。 Windows8は使えないだの、 シェルがしょぼいからあれだのと言われることも多いですが、 圧倒的にたくさんのPCで安心して動かせるOSとして、 私個人としてはとても便利に使っています。 Let’snoteのCF-S10Dという2年ほど前の機種を使っているのですが、 ようやくPanasonicのWindows8サポートがこの機種までやってきたので、 Windows8に入れ替えることにしました。 実は発売当初にもWindows8を入れていたのですが、 Let’snoteを快適に使うには必須の、「くるくるホイール」が使えなかったり、 謎の認識されないデバイスがあったりだったので、 Windows7に戻していました。 というわけで、セットアップついでにそのときの記録を書いておこうと
追記:Amazonのリンクを張っていますが、オーム社のサイト http://estore.ohmsha.co.jp/titles/978427406911P からも購入できます。 AmazonのKindle版はまだ出ていないようですが、 こちらからは今現在でDRMなしのPDFも購入できます。 Kindle版リリースの際にも、 フローレイアウトになる予定はないそうですので、 Amazonにこだわりがあるのでなければ、 電子版で読みたいという方は、こちらから購入されるのが良いかと思います。 あらかじめお断りしておきますと、 この記事は書評ではなく、宣伝です。 数年前に原著を読んだ時から、 本書は私の中では間違いなく良書ということになっておりますので、 私がいまさら内容の善し悪しを語ることには、 はじめから意味がないと思っております。 なのでここでは、この本の魅力、読んで欲しい人、どういう風に読
ずいぶん前の話になってしまいましたが、去る3月31日に、 ekmett勉強会 を主催しました。 タイトルでは何の勉強会かさっぱりかと思いますが、 ekmett(a.k.a edwardk) こと Edward Kmett 氏の手がけられた ライブラリを勉強する会でした。 発端としては ekmett さんが最近たくさん面白いライブラリを出しているなあと ちょっと前から個人的にウォッチしていたのですが、 どうやら ekmett シンパな人が日本にも何人かいることが分かったので、 じゃあ、みんなして手分けしてライブラリを勉強する会でも開きますかね、 と言ったところです。 最初は、10人ぐらい集まって、5本ぐらい発表があれば良いかなあと 漠然と思っていたのですが、最終的に30人近い参加者と、10本の発表、 さらには ekmett さんご本人にビデオ参加までしていただくという、 とても充実した勉強会
Fay をいじってみたので、 せっかくだから記事を書いておこうと思います。 なお、Fayは新しい言語(というより、処理系と言った方が適切かな)ですので、 ここに書いてある情報は、来年か、あるいは半年後か、 それとももっとずっと早くに陳腐化する可能性がそれなりに低くないことを、 あらかじめお断りしておきます。 この記事執筆時に用いたFayのバージョンは、 fay-0.14.5.0 です。 デモ・前置き 特に何か作りたいものが有ったわけではなかったので、 今回作ってみたものは超どうでも良いツールです。 http://tanakh.jp/tools/sudden.html _人人人人人人_ > 突然の死 <  ̄Y^Y^Y^Y^Y ̄ こういうテキストを生成するだけのツールです。 Fayのコード HTMLコード これらのコンパイルなどもhakyllでまとめて管理できるようにしました。 hakyllに
Beautiful Error Handling 田中英行 <[email protected]> 2012年夏のプログラミング・シンポジウム 自己紹介 田中英行 (@tanakh , http://tanakh.jp ) (株)Preferred Infrastructure勤務のプログラマ Haskell 愛好家 BASIC(20年), C++(15年), Haskell(10年) 「すごいHaskellたのしく学ぼう!」 (Learn You a Haskell for Great Good! の和訳) 好評発売中!! 概要 エラー処理に美しさを! エラー処理の抽象化 Haskellでのアプローチ エラー処理に美しさを! 背景 エラー処理は醜くなりがち なんで汚くなるのか? これまで適切な抽象化が行われて来なかったから なぜそういう状況になっているのか? 大きな原因の一つはプログ
たのしいHaskellのツールチェインとC++田中英行 <[email protected]> PFIセミナー 2012/07/19 自己紹介田中英行, @tanakh, http://tanakh.jp PFIで働くプログラマ Haskell愛好家 拙訳「すごいHaskellたのしく学ぼう! 」発売中 本日の概要ソフトウェアテストを取り巻く環境 C/C++のコードをQuickCheckする C/C++のコードをCriterionでパフォーマンス測定する テスト駆動開発Not enough! http://blog.fogus.me/2012/06/20/not-enough/ http://evanfarrer.blogspot.ca/2012/06/unit-testing-isnt-enough-you-need.html Static typing is not enough!
というタイトルで、先日、社内の公開セミナーで話しました。 発表資料はこちら。 Haskellのテストフレームワークとベンチマークフレームワークがよくできているので、 これをC++でも使えるんじゃないかという内容です。 概要 背景として、QuickCheck をもっと多くの人に知って/使って貰いたいというのがあります。 QuickCheckは、普段から使っている人間からすると、よくいろいろなバグを拾ってくれるとても便利なものなのですが、 残念ながら普段開発に利用しているC++には相当のもので完成度の高いものが見当たりません。 だからといって、そこから作るためにC++のテンプレートをいじくりまわすには、私はもう老いてしまいました (与えられた関数にランダムな入力を与えるだけなら簡単なのですが、ジェネレータを自由にいじれる機能がやはり欲しいところで)。 そう思った時に、FFIを使えてQuickC
この記事は http://www.yesodweb.com/blog/2012/06/conduit-0-5 の翻訳です。 conduit-0.5 をリリースしました。 conduitはストリームデータを扱うためのライブラリです。 conduitを用いると、様々な形のデータを生成、変形、消費するような処理を、 簡単に組み合わせることができるようになります。 enumerator/iterateeパラダイムと同じ問題を解決することを目的に作られましたが、 アプローチはこれらのものとは異なります。 conduitは簡単に理解して利用できるものになることを一番の目的としています。 遅延I/Oとは異なり、リソースの即時開放を保証し、 また、純粋なコードに例外を持ち込みません。 今回のリリースでSource、Sink、Conduitのそれぞれを作るための、 シンプルで効率の良い、高レベルのインターフ
エラー処理の抽象化田中英行 <[email protected]> 2012/06/26 @LOG.debug("nice catch!") 自己紹介田中英行 http://tanakh.jpTwitter: @tanakhGithub: https://github.com/tanakh Preferred Infrastracture 勤務のプログラマHaskellと、プログラミングについてあれこれ考えるのが好きHaskell入門書 すごいHaskellたのしく学ぼう! Learn You a Haskell for Great Good! の和訳 java-ja …!?とんでもないところに来てしまったぞ (((´・_・`))) ブルブル 本日のお話なぜ、エラー処理は重要なのか?なぜ、エラー処理の抽象化は重要なのか?なぜ、エラー処理の抽象化は行われて来なかったのか?
例外の勉強会をやるので、是非にというお話を頂いて、 LOG.debug(“nice catch!”) というイベントで発表させていただきました。 当日の資料はこちらでご覧になれます。 エラー処理の抽象化 昨年末頃に社内セミナーで発表した エラー処理を書いてはいけない をもうちょっと抽象的に、あるいは具体的な話を入れて焼き直したような内容です。 今回は java-ja さんの勉強会という事で、 なにやらモヒカンとかマサカリとかが飛んでくるらしい、 とんでもないところに来てしまったとビクビクしていましたが、 この難局も何とか乗り切りました。はい。 皆さんとても真面目にソフトウェアエンジニアリングについて議論していて、楽しかったです。 僕は普段Javaでコードは書かないのですが、 Javaだと普通こうする的なのが垣間見えて、 いろいろJavaのバッドノウハウ(あるいはグッドプラクティス)が学べま
すごいHaskellたのしく裏話! 田中英行 [email protected] 2012-05-26 @Haskell Day 2012 自己紹介田中英行 (たなか ひでゆき)@tanakhhttp://tanakh.jp/(株)Preferred Infrastracture勤務 Haskell愛好家Haskell10年目英語が好きじゃない 祝・発売! おかげさまで…好調に売れているようです > m(´・_・`)m ※略称についてAmazonのおすすめメールが元ネタらしい 本書についてLearn you a Haskell for Great Good! の和訳 原著についてもともと三年ほど前にWebで公開されている入門記事それが昨年に書籍化好評だったみたいhttp://www.reddit.com/r/programming/comments/77qxx/learn_
[@nushio](https://twitter.com/#!/nushio)こと村主さんと Learn You a Haskell for Great Good! を翻訳しました。 「すごいHaskellたのしく学ぼう!」というタイトルで、 5月22日、オーム社様より発売予定です! 詳しい情報は http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06885-0 こちら。 入門書としての出来の良さに惚れ込んで原著者の Miran Lipovača さんに 翻訳したい旨を伝えたのが発端でした。ちょうど去年の夏頃でしたか。 そうこうしているうちに、オーム社の鹿野さんから出版のお話を頂いて、 トントン拍子で進んで行きました。 翻訳作業の方はトントン拍子とはいかず、 関係者の皆様にはご迷惑をお掛けしました。 ともあれ、完成しました。5
Conduitの今田中英行 [email protected] 2012/04/22 Yesod 1.0 勉強会 自己紹介田中英行 (@tanakh)(株)Preferred Infrastracture 研究開発部門社内ライブラリ pficommon https://github.com/pfi/pficommon分散機械学習フレームワーク jubatus http://jubat.us/検索エンジン SedueHaskell愛好家2003~Learn You a Haskell for Great Good!訳してます近々でます!ConduitとはConduitとはI/O を良い感じにやるためのライブラリ良い感じのストリーミング的なパーザ良い感じのバッファの自動管理良い感じのFlushing良い感じのリソース管理get rid of lazy-eval遅延I/O は良くないhttp
きっかけ http://d.hatena.ne.jp/itchyny/20120304 この記事を見て、私も昔円周率を計算したことがあるのを思い出しました。 http://d.hatena.ne.jp/tanakh/20070506#p1 公式は同じくチュドノフスキーを使用、GHCのIntegerをそのまま用いて円周率を計算、 当時(5年前)のマシン(おそらくCore2あたり)で1億桁が15分ほどだったようです。 SPOJというサイトのコンテスト向けに、 $\sqrt{2}$ 200万桁計算の高速化 をCで書くとこから始めて、 ナイーブ乗算、カラツバ法、そしてFFT乗算の実装にいたり、円周率へ。 最初AGMを実装し、 古くて新しい方法、Arctan系の公式の実装を経て Binary Splitting Methodを知り、 チュドノフスキーの公式へ至りました。 さらにHaskellでの実装
最近のHaskell 最近はHaskellに関するブログ記事をちらほら見かけるようになって来ました。 日々のスクリプトに使おうとしようという人もいるようで、 http://d.hatena.ne.jp/aya_eiya/20120221/1329836207 このようなブログ記事を見かけました。 Haskellで書いたらそんなに汚いコードにはならないというのはたしかにあります。 やってはならないということがHaskellには比較的少ないのだと思います。 というのも、Haskellでは、やってはいけないことがそもそもできないようになっているか、 やることが極めて難しくなっている(unsafeプリフィックスを持つ関数を駆使したりなど) ことが多いのです。 しかし、そんなHaskellのプログラムも、少し工夫すればもっと良くなることもあります。 列挙問題 先ほどのブログの記事の1つ目のプログラム
Cloud Haskell 田中英行 [email protected] 第0回スタートHaskell LT 時はまさにクラウド時代… • 猫も杓子もクラウド – チューニングするより台数増やす • 猫も杓子もHadoop/MapReduce • しかしJava… – Map Reduceなのに! • クラウド時代のHaskellのために! 概要 • クラウド上でHaskellを動かすためのライブラリ • 並列・分散環境でどのようにHaskellを動かす か? Cloud Haskellとは? • Erlang風のインターフェースをHaskellに – 前は Erlang in Haskell と呼ばれていた • メッセージパッシングなインターフェース • 分散環境でのfault-tolerantなタスク管理 • 現在はプロセスレイヤのみ – http://www.cl.c
Peggy: 新しい時代のパーザジェネレータ田中英行 [email protected] 2011-12-16 @ Haskell忘年会 自己紹介田中英行 (@tanakh, http://tanakh.jp)(株)Preferred Infrastructure 勤務C++ 書いてますHaskell愛好家 (2004~)Learn You a Haskell for Great Good! 翻訳中来春予定C81関数型イカ娘本寄稿予定SS2篇 Peggy: 全く新しいパーザジェネレータPeggyとは?パーザジェネレータのモダンな実装新しい構文解析アルゴリズムシンプル・簡単・強力な記法Quasi-QuoterであるHaskellコードへのシームレスな組み込みStandalone なパーザとしても利用可能Quasi-Quoter生成機能Haskellコードのシームレスな生成Un
次のページ
このページを最初にブックマークしてみませんか?
『純粋関数空間 Hideyuki Tanaka』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く