c4se記:さっちゃんですよ☆

.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)

.。oO(此のblogは、主に音樂考察Programmingに分類されますよ。ヾ(〃l _ l)ノ゙♬♪♡

音樂はSoundCloud等バラバラの場所に公開中です。申し訳ないがlinkをたどるなどして探してください。

考察は現在は主に此のblogで公表中です。

programmingは、ひろくみせるものはGitHubで、個人的なものはBitBucketで開発中です。

c4se

Elixir

Elixirの優先度附きキューライブラリPQueue2を作った

pqueue2 | Hexを作った。 github.com Erlangで書かれたpqueueに含まれてるpqueue2モジュールを、Elixirでラップしたもの。 q = PQueue2.new |> PQueue2.put(:a, 2) |> PQueue2.put(:b, 1) |> PQueue2.put(:c, 1) {:b, q} = PQueue2.pop CollectableとEnumera…

遲延評價Streamでgzip/gunzipするElixirのライブラリを作った

Streamでhashを計算する stream_hash | Hex 何故無かった。 github.com "test/fixture/xyzxyz.txt" |> File.stream! |> StreamHash.hash(:sha512) |> Enum.to_list |> hd # <<215, 133, 241, 243, 115, 159, 59, 127, 111, 242, 140, 106, 171, 211, 130, 48…

日本の祝日を扱ふholiday_jpをElixirに移植したholiday_jp-elixirを作った

日本の祝日を扱ふholiday_jpをElixirに移植したholiday_jp-elixirを作った github.com 普段はRubyやElixirやPythonやCrystalを扱ってゐる。祝日と云ふのは本質的に難しい。何時が祝日であるかは国民の祝日に関する法律と云ふ法律に依って決まる。一年のいつ…

Elixirで分散じゃんけんをシミュレートする

じゃんけんをシミュレートしてみる。練習問題だ。 人間を五人ほど作り、グー/チョキ/パーのなにを出させるかをそれぞれに決めさせ、勝負する。引き分けを考慮し、勝者が最後の一人になるまで繰り返す。 せっかくElixir (Erlang) でつくるのだから、各人間…

ElixirにてListのランダムな要素を取得する

追記:20170702 Enum.random/1を使ふのが好い。 Enum – Elixir v1.4.5Rubyだと xs.sample である。JavaScriptだと xs[Math.floor(Math.random() * xs.length)]; となる。Elixirでもこれに近いことを行ふ。Erlangのrandomモジュールを使ってみると Enum.at(xs,…

他言語から見た Elixir (macro, protocol, binary構文)

@udzura さま(〃l _ l)?? さっちゃんですヾ(〃l _ l)ノ゙ (憤怒の相直されました(〃l _ l) Elixir Advent Calendar 2013 14日目です。昨日はElixir - Sigil大好き!一番好きな機能です。 - Qiita [キータ]でした。あーRubyの。独自定義出来るのか、ふうむ。…

Elixirの日時用helper

きっと何人目だ感あふれる、日付時刻用にhelper moduleだよ。 Erlangは{{year, month, date}, {hour, minute, second}}形式のtupleを日時に使う事が多いっぽいから、其れとの相互変換も仕込んでるよ。 RubyのActiveSupport Timeみたいな1.years.beforeみたい…

Elixir 0.10.0のStreamで自然数列

此っち (Haskell (とElixir) でもMöbius関数を実装した) では、遅延無限listを作って自然数列を作ったが、ElixirにはStreamが有ったのだった。0.10.0に成って、|>がStreamを吐く様に成ったそうなので、使ってみる。 Stream.iterate(0, &1 + 1) |> Stream.tak…

Elixirをupdateする

Elixirをupdateする。 cd ~/elixir git pull make clean make test elixir --version 常識である。0.9.0から0.10.0に上げた。installするには公式web siteの通り。 1 Introduction - Elixir cd git clone https://github.com/elixir-lang/elixir.git cd elix…

Haskell (とElixir) でもMöbius関数を実装した

気に成ってHaskellでもMobius函數 (メビウス関数) を実装した。Elixir版も再掲する。 cf. Elixir (とJavaScriptとRuby) でMöbius関数を実装した http://c4se.hatenablog.com/entry/2013/07/12/210747 前回Haskellをまともに書いたのは人生で初めてである。今…

Elixir (とJavaScriptとRuby) でMöbius関数を実装した

Elixirでメビウス函數 (Mobius function) を実装する積りだったのだけれど、余りにもElixirを書けな過ぎて、JavaScriptとRubyでも実装した。 ElixirでMöbius函數 素數列 (素数列) は、エラトステネスの篩 (Sieve of Eratosthenes) で求めた。遅延listが無い…

Elixirの、Vim Unite outline sourceを書いた

ElixirのUnite outline sourceを書いた。 暫く使ってみて、有用ならなんとかする。 "============================================================================= " File : autoload/unite/sources/outline/elixir.vim " Author : ne_Sachirou <utakata.c4se@gmail.com> " Updat</utakata.c4se@gmail.com>…

UbuntuにErlang/OTP R16をinstallする

Elixirの為に。 直ぐに陳腐に成る記述をする。 Ubuntu 13.04のaptに登録されてゐるerlang packageは現在R14或いはR15と古く、最新のElixirが動かない。erlangをsourceからbuildするのは依存関係の解決が面倒なので、其れを簡単にする。 先ずversionの古いerl…