タグ

2014年5月28日のブックマーク (5件)

  • RubyにHaskellよりも強力なパターンマッチを実装した - Qiita

    require 'egison' include Egison match_all(object) do with(pattern) do ... end end match(object) do with(pattern) do ... end with(pattern) do ... end ... end パターンマッチに成功すると、withに渡されたブロックが実行され、その結果が返されます。 このライブラリのパターンマッチでは、パターンマッチの結果が複数あるということがあります。 match_all構文はそのすべてのパターンマッチの結果それぞれについてwithに渡されたブロックを実行し、すべての結果をまとめた配列を返します。 match_all構文は1つのwith節を取ります。 一方、matchは複数のwith節を取ります。 先頭のwith節のパターンから順番にパターンマッチに成功

    RubyにHaskellよりも強力なパターンマッチを実装した - Qiita
  • CP932変換表の問題が顕在化する例 - yanok.net

    JIS X 0208のシフトJISとUnicodeとの変換の問題として、CP932 (Windows-31J)の問題はよく知られています。書籍『プログラマのための文字コード技術入門』にも記しました。Windowsに実装されているUnicodeへの変換表が、標準の定義とずれている問題です。 この問題は、使用頻度の高さから、波ダッシュ「〜」(1面1区33点、SJIS 8160)が化け る問題としてよく知られています。 しかし、波ダッシュ以外にも大きな影響を受けている文字(記号)があります。 双柱「‖」1面1区34点 (SJIS 8161)は、垂直線が2並んだ格好をしている記号です。文字名はDOUBLE VERTICAL LINEといいます。Unicodeで対応する符号位置はU+2016です。この記号はCP932変換表の影響を受けています。CP932変換表では、U+2016でなく平行記号 (P

    tmsanrinsha
    tmsanrinsha 2014/05/28
    ローマ数字があってもiconv -f SHIFT_JISX0213 -t UTF-8 hoge.txt だと文字化けしない。EUC-JPへの変換はできない
  • ミラクル・リナックス:Samba 国際化プロジェクト > iconvについて

    オープンソースソフトウェアおよびフリーソフトウェアにおいてもソフトウェアの 国際化対応を行うために文字列処理の際に UCS(Unicode) を使う事が多くなってき ています。 UCS を用いる主な理由としては、各国のエンコーディングを考慮したコードを書か なくてもプログラム内部では UCS で処理して入出力の際にエンコーディング変換 を行えば良いという考えがあるようです。 UCS と各エンコーディングの変換を行う関数として iconv() がありますが、オー プンソースソフトウェアやフリーソフトウェアで利用されている libiconv や glibc2 での iconv() の実装では日語での利用が実用にならないという問題があ ります。 この問題に対して各ソフトウェアの日のコミュニティーが個別に対応していると いうのが現状で、必ずしも包括的な解決策がとられているわけではありません。

  • telnetコマンドでTCPポートのリッスン状態を確認する

    telnet 接続先ホスト [ポート番号|サービス名] ネットワークで相手と接続できないという問題が発生した際,その接続先への経路が有効かどうかを確認したいことがあります。このような場合,単に経路が有効かどうかだけを調べたければ通常はpingコマンドを利用しますが,接続先の特定ポートへ接続できるかを確認するにはtelnetコマンドを使うのが有効です。telnetコマンドで,ポート番号を指定しながら相手と通信してみることで,特定のポートで接続できるかどうかを確認できます。指定したポートで相手と通信が可能な場合,サーバーから何らかの文字列が表示されることとなります(図)。通信ができない場合は," Unable to connect to remote host " が表示され,接続が切断されます。

    telnetコマンドでTCPポートのリッスン状態を確認する
  • Yukawa Story (1954)