【重要】サービス終了のお知らせ

train12

以前はC++をメインにいじっていましたが、最近はすっかりJavaScriptやHTML5の魅力の虜になっていましたが、今はさらにC#がメインになってきてます。
そんなJavaScriptやHTML5などの機能を解説していく(予定)のブログはこちら
http://hazama1616.blogspot.jp

一応ツイッターもやってます。でも、ブログを始めたから技術系のことはほとんどそちらに書くはず
http://twitter.com/train12_find

Works

forked: Sound Visualizer

今や音楽界でテレビや動画サイトに引っ張りだこのボカロたち。最近の彼らの活躍には目を見張るものがあるので、きっとご存じの方も多いはずでしょう。そんないつもは曲に合わせて愛嬌たっぷりのダンスを披露するボカロキャラ達が、今回は曲に「踊らされ」ます。(楽してるって言わないで^^;) そんなボカロキャラ達にあなたも「踊らされてる」かも・・・? なお、ボカロたちの画像はこちらのサイトからお借りしました。この場を借りて御礼申し上げます。 http://korekita.web.fc2.com/ 2016/9/1 追記: 動くように修正。Chromeでのみ、動作確認してます。Safariでは、オーディオのデコードがうまくいかず、動きません。

  • 1097
  • 0

簡易MMLパーサーによる音ゲーもどき(コーディングコンテスト Q vol.3エントリー用コード)

タイトル通り、簡易MMLパーサーを使用した音ゲーみたいなものです。自分は普段、音ゲーなんてしないのでこれを音ゲーと言っていいのかは定かではありませんが・・・ 音の再生にWebAudioAPIを使用しているのでWebkit系のブラウザを推奨しますが、Safariの場合多少コマンドラインからの設定が必要そうなのでChromeで遊ぶことを推奨します。 キーボードの左端、1~4の列を使用して操作します。つまり、左上のパネルから1,2,3,4,q,w,e,r...,x,c,vにそれぞれのパネルが割り当てられています。またpキーでソース入力ウインドウを開きます。 MMLの文法に関して使用可能なものはサンプル曲に使用しているものでほぼすべてです。生成できる音色も正弦波、矩形波、ノコギリ波、三角波のみとなっており、ゲートタイムの調整やエフェクトなども一切使えないので表現力に乏しいのですが、暫定仕様ということで何卒ご容赦ください。いずれ、機能強化したものをシーケンサー単体で公開するかもしれません。 その他、技術的なことはブログにでも書き記しておくつもりです。 それでは、お気に入りの曲をMML化して遊んじゃいましょう! ちなみにサンプル曲は、「かえるの歌」。コード進行は適当なので、メロディーと合ってなくてもご愛嬌です。 WebAudioAPIが直接絡むところは隠蔽してます。特に意味はありませんが。なので、あまり実装の参考にはならないかも……?ごめんなさい。 2016/8/31 追記: 動作しなくなっていたのを修正 Safariでも問題なく動作するようになってます。動作確認してませんが、Firefoxでも動くようになってると思います。

  • 4343
  • 2

TS LISP

初期TypeScript、それもまだコンパイラのバージョンが0.8.xとか0.9.xの頃に書いたLISP処理系です。実装はhttp://www.oki-osk.jp/esc/llsp/v8.htmlに記載されているものをポートしています。 と書いたものの、実は上記リンク先の実装のうちexception周りは実装してません。その前で力尽きました。もう3年も前のことなので、記憶もあやふやになってきてますが、 この実装を最新のTypeScript向けにブラッシュアップするときにでも、実装するかもしれません。 それにしても、3年ですって。きゃー、3年ですって。中学入ったばかりの子が、高校入ったばかりの子が卒業してしまうぐらいの時間が経っちゃったんですね。光陰矢の如しですな。 まあ、それは置いておいて。乙女系男子だから、そういうのが気になっちゃうんです。 上記リンクのうち、promiseオブジェクトの生成short handは実装しているので、Haskell顔負けの遅延評価処理系を実現できちゃいます。 そのほか、helpコマンドを駆使していただければわかる通り、load-sampleという特別な関数でいくつか面白い処理をできるので、試してみてください。 promiseオブジェクトの活用方法は、このload-sample関数で垣間見ることができます。 元のTypeScriptのソースは、長くなるのでここには載せません。ブログのほうにでも載せると思うので、そちらをご参照ください。(TypeScriptのソースはGithubで参照してください。 URLはhttps://github.com/hazama-yuinyan/TSLispです) 上記リンク内には、promiseの自動成就みたいなことが書いてありますが、現状なぜか機能してないようなので、手動で(force)してください。 そのほかは、特筆すべきことはないかな。 この実装自体、MITライセンスで公開しておくので、気軽に使えるWebLISP処理系としても、活用していただけたら光栄です。 なお、実行環境はインタープリタなので、速度の保証はしません。promiseをうまく活用すれば、ある程度速度の改善はできるとは思いますが、数値計算などには向かないと思うので、 おとなしく別の実行環境を検索してください。

  • 1466
  • 0

Skills

  • HTML5
  • CSS3
  • JavaScript
  • PHP
  • Python
  • C++
  • C#
  • SQL
  • Shell Script

Hot tags

Categories

HTML / CSS / JavaScript