トップ 追記

Route 477

過去の日記


2015-05-27

[mac][types] MacでSML#をコンパイルした

前にチャレンジしたときはうまく行かなくて諦めたのだけど、こちらの手順を参考にしたらコンパイルできた。ありがとうございます。

以下は手順。

32bit版のgmpを入れる

既にgmpが入っていたのでいったん削除した。

$ brew remove gmp
$ brew install gmp --32-bit

LLVMのコンパイル

今回は/usrに入れるのではなく、SML#専用にコンパイルすることにした。

$ mkdir ~/bin/smlshp
$ cd ~/bin/smlshp
$ wget http://llvm.org/releases/3.4.2/llvm-3.4.2.src.tar.gz
$ tar xvf llvm-3.4.2.src.tar.gz
$ cd llvm-3.4.2.src
$ ./configure --build=i686-mac-darwin CC='gcc -m32' CXX='g++ -m32' --prefix=/Users/yhara/bin/smlshp/llvm34 && make && make install

SML#のコンパイル

$ cd ~/bin/smlshp
$ wget http://www.pllab.riec.tohoku.ac.jp/smlsharp/download/smlsharp-2.0.0.tar.gz
$ tar xvf smlsharp-2.0.0.tar.gz
$ cd smlsharp-2.0.0
$ ./configure --with-llvm=/Users/yhara/bin/smlshp/llvm34/      \
               --prefix=/Users/yhara/bin/smlshp/smlsharp/ \
               LDFLAGS='-L/usr/local/Cellar/gmp/6.0.0a/lib'     \
              CPPFLAGS='-I/usr/local/Cellar/gmp/6.0.0a/include' \
                    CC='gcc -m32'                               \
                   CXX='g++ -m32'
$ make && make install

動作確認

$ cd ~/bin/smlshp/smlsharp
$ ./bin/smlsharp
SML# 2.0.0 (2014-04-04 11:47:08 JST) for i686-apple-darwin13.4.0 with LLVM 3.4
# 1 + 1;
val it = 2 : int
# 

うまく動いたようだ。


2015-04-09

[english] NHKのラジオ英語講座を、インターネットで聞く

最近は英語学習について特に何もしてないので、NHKのラジオ英語講座でも聞こうかなぁと思っていたのだけど、そういえば今月から新年度で、講座も新クールになることを思い出した。

最近はラジオでの放送から一週間遅れでストリーミング放送が提供されており、「NHK マイ語学」への会員登録(無料)は必要だけど、好きな時間にパソコン等で聞けるらしい。またテキストも電子書籍版が売られており、Kindle for Macとかで読むことができる。便利。

AmazonのNHKテキストコーナーは2016年分の予約販売が先頭に来ていて、何がなんだかわからなかったので、今月分を以下にアフィリエイトしておく。
(難易度についてはこのページの下の方を参照のこと)

難易度A1〜A2

A1: 「日常生活での基本的な表現を理解し、ごく簡単なやりとりができる」
A2: 「日常生活での身近なことがらについて、簡単なやりとりができる」

NHKラジオ 基礎英語1 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)
NHKラジオ 基礎英語2 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)
NHKラジオ 基礎英語3 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)
NHKラジオ エンジョイ・シンプル・イングリッシュ 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)
NHKラジオ 英会話タイムトライアル 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)

難易度B1

B1: 「社会生活での身近な話題について理解し、自分の意思とその理由を簡単に説明できる」

NHKラジオ ラジオ英会話 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)
NHKラジオ 入門ビジネス英語 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)

難易度B2

B2: 「社会生活での幅広い話題について自然に会話ができ、明確かつ詳細に自分の意見を表現できる」

NHKラジオ 攻略!英語リスニング 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)

難易度C1

C1: 「広範で複雑な話題を理解して、目的に合った適切な言葉を使い、論理的な主張や議論を組み立てることができる」

NHKラジオ 実践ビジネス英語 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)

(難易度設定なし)

NHKラジオ 英語で読む村上春樹 2015年 4月号 [雑誌] NHKテキスト(NHK出版 日本放送協会)

内容について

各講座の詳しい内容については、英語のテレビ番組・ラジオ番組 | NHKゴガク を参照。
すごい適当だけど、選ぶとしたら例えばこんな感じかな?


2015-02-20

[ruby][memo] Sinatraでundefined method join for stringが出る

ちょっとSinatraでアプリを書いているのだけど、undefined methodjoin' for String`みたいなエラーでちょっとはまってしまった。

Slim

原因の一つ目は「テンプレートエンジンにSlimを使っていて」「partialをレンダリングしようとした(?)」ときに出るもので、slimとtempleを最新版(slim 3.0.2, temple 0.7.5)に上げたら直った。

Sinatra

で、実は同じエラーが出るケースがSinatra本体にもある。こちらは「例外が発生し、show_exceptionで例外ページを表示しようとしたとき」に起こる。

とりあえずこのコミットで治るらしいので、Gemfileに以下のように書いて凌ぐことにした。

gem 'sinatra', git: 'https://github.com/sinatra/sinatra.git',
               ref: '5f6168bfc92280892e819df524d4508cf9032f6d'
               # for https://github.com/sinatra/sinatra/issues/961
本日のツッコミ(全1件) [ツッコミを入れる]

dyama [sinatraの件、同じ現象ではまっていました。ありがとうございます、解決しました。]


2015-01-06

[github] GitHub Wikiを全画面表示する

GitHub Wikiは便利だけど、ページ幅がけっこう狭いので、表とか入れるとちょっと見づらかったりする。
これをChrome + CSSでなんとかする方法。

  1. Stylishという拡張を入れる
  2. Github - Remove wiki page list and whitespaceを追加
  3. GitHub Wideを追加

これでGitHubの表示幅が広くなって、かつサイドバーも無くなるのでWikiコンテンツが画面いっぱいに表示されるようになった。

ただサイドバー無くすのはちょっとやりすぎで、ページ間移動がめんどい。クリックでトグルできたりする方がほんとは良い。
まあ印刷時だけ有効化するとかが良いかも。


2015-01-05

[vim] Vimでペースト→インデントする方法

Vimで、「いまペーストした範囲を全体的に右にずらしたい」みたいなときがたまにある。
vim usersに何か書いてあったような…と思って調べてみたところ、それっぽいものを見つけた。

]」という特別な名前のmarkが、「直近に変更またはyankしたテキスト範囲の末尾」を指すようだ。
なので、pとかでyankしてから「>']」とタイプすることで、ペーストした範囲の最後までを対象にインデント(>)できると。なるほど。

いつも設定したマークに飛ぶときは「`」の方を使っていたけど、「'」というのもあるらしい。「`」はマークしたその位置に飛ぶけど、「'」はマーク箇所の行頭(=その最初の非空白文字)に飛ぶようだ。今回はインデント(>)なのでどっちでもよさそう。

本日のツッコミ(全3件) [ツッコミを入れる]

ujihisa [どや顔しつつここ通過します > いつも設定したマークに飛ぶときは「」の方を使っていたけど backtic..]

yhara [今更ですが修正しました。ありがとうございます。 なんかコメントが受け取れてなかったっぽいのでspam判定を「tDi..]

ujihisa [便利]


過去の日記