タグ

Rubyに関するohyajapanのブックマーク (35)

  • RaccによるC言語パーサ - imHo

    C言語のソースをパースしたいと思ってたときがあったな、と思い出した。RubyでRaccを使って、K&Rに載ってるBNFをわせてみたが、コンフリクトが発生する。 $ racc c.y 1 shift/reduce conflicts 2 reduce/reduce conflictsによれば「唯一ぶつかりがあるのは、if-elseのあいまいさである。」と書いてあるんだけど。「-v」オプションをつけて詳細を表示するとぶつかってるのは state 2 7) declaration : declaration_specifiers _ init_declarator_list_opt ";" 13) declaration_specifiers_opt : declaration_specifiers _ "*" shift, and go to state 36 "*" [reduce us

    RaccによるC言語パーサ - imHo
  • おまけ: Scheme on YARV - ひとり勉強会

    これで今日のYARV勉強会はおしまいです。 って、これではやけに短くなってしまったので、おまけとして、るびま で触れられていた 当は、今回何か簡単な言語のコンパイラを作ろうと思っていたのですが、間に合いませんでした。誰か Scheme あたりで挑戦してみませんか。かなり簡単だと思いますよ。 これをやってみようと思います。 yasm.rb 記事で紹介されているyasmモジュールがRubyのtrunkに見つからなかったので、旧YARVのレポジトリ http://www.atdot.net/svn/yarv/trunk/lib/yasm.rb から拾ってきて適当に修正して使っています。変えたのは、YARVの仮想マシンオブジェクトを表すクラス名と - module YARVCore + class VM - YARVCore:: + VM:: メソッド名としてSymbolを渡すと怒られるみたいだ

    おまけ: Scheme on YARV - ひとり勉強会
    ohyajapan
    ohyajapan 2008/11/30
    scheme on YARV
  • Route 477(2007-12-02)

    ■ [event][prog] LiveCoding#5に出演しました 土曜日に大阪で行われたイベントLiveCoding#5に、 LiveCoderとして出演してきました。 事前に、LivePromoter(※主催者のことらしい)であるujihisaさんから できるだけマニアックな方がいいというオーダーを受けていたので、 Ruby + Javascript + Scheme + Zu という無茶な構成にしてみました(笑)。 *1 BiwaSchemeで 「ず」のインタプリタを作るというテーマだったのですが、 予想外に手間取ってしまい、パース結果をRubyCGI経由で取ってくるとこまでしか行きませんでした。 解説のnaoya_tさん、Abeさんごめんなさい(><) 敗因 Ajaxのクロスドメイン制約を忘れていた CGIはサーバに、htmlはローカルに置くつもりだったんですが、どちらかに統

    Route 477(2007-12-02)
  • Rubyist Magazine - 標準添付ライブラリ紹介 【第 3 回】 Kconv/NKF/Iconv

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • desumasuのWiki - Rubyの文字列操作関数をHaskellで定義する

    Rubyの文字列操作関数の一部をHaskellで実装してみました。 ここに掲載されているソースコードはcinnamonに取り込まれております。ライセンスはcinnamonに従います。 バグ等ありましたら、ページ最後のコメント欄に書き込んでいただけると非常に助かります。 以下は文字列操作関数の一覧です。HUnitで記述したテストも実装コードと一緒に掲載しますので、関数を利用する際の参考にしてください。 String#capitalize capitalize :: String -> String capitalize [] = [] capitalize (x : xs) = toUpper x : map toLower xs testCapitalize = test [ "test1" ~: "Hello" ~=? capitalize "hello", "test2" ~: "He

  • L2Lisp in Ruby:CodeZine

    はじめに P.Graham著『On Lisp』に示されているように、現代的なLispプログラミングでは静的スコープ(字句的スコープ)と末尾呼出し(末尾再帰を含む)の最適化のもとでのマクロが重要な意味をもちます。しかし、今まで処理系作成の初心者が内部に手を入れやすい手頃な大きさの実装が事実上ありませんでした。 ここでは、そういったモダンな特徴を備えた小さなLispインタープリタL2LispをRubyで作ってみます。L2Lisp(Little Lambda Lisp)は、Lispの理論的背景であるラムダ算法(lambda calculus)に対し、有力なLisp方言であるSchemeと同程度に忠実である一方、その他の点では広く普及しているEmacs Lispのサブセットとしたオリジナルの小型Lispです。 実行例としてtak関数を定義し、実行する様子を示します。Ruby以外に必要なのはL2Li

  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • http://wordpress.rauru-block.org/index.php/1558

  • [ruby][event] 「Ruby 1.9 を語る」 by まつもとゆきひろ - Ruby/Rails勉強会@関西-21 - Greenbear Diary (2007-12-15)

    ■ [ruby][event] Ruby/Rails勉強会@関西-21 行ってきた。 久しぶりの神戸で、まつもとさんが来られるということもあって、 初めての方がいつもより多かった模様。また京都や大阪会場にもいらしてくださいね。 最初のセッションのロガーをしたので、ログを以下に貼っておきます。編集中 編集終わりました。長文警報発令中。 ■ [ruby] Rubytwitterの新着を読み上げさせてみる 編集中につき小ネタでもひとつ。 Mac の say コマンドがうらやましかったので調べてみた - ema log (2007-12-16) Macにはsayという音声合成で喋ってくれるコマンドがあるのだが、gem install win32-sapiWindowsでも似たようなことが できるとのこと。ema++ で、ついでなので声を変えられるようにしてみた。 手元では-n 0 はデフォル

    [ruby][event] 「Ruby 1.9 を語る」 by まつもとゆきひろ - Ruby/Rails勉強会@関西-21 - Greenbear Diary (2007-12-15)
  • Route 477(2007-11-27)

    ■ [prog] PAC(Presentation-Abstraction-Control)パターン なんかMVCの進化系パターンとして、PACなるものがあるらしい。 PACフレームワーク - MVCの次に来るもの|Ouobpo Presentation-Abstraction-Control Presentation-abstraction-control - Wikipedia, the free encyclopedia MとVとCを持った小さいコンポーネントがたくさんあり、それぞれがCを介してやりとりする…みたいなイメージか。 2番目のサイトでは、使用例として「新しいGUIコンポーネントを開発するとき」が挙げられている。 ボタンやパネルなどいろいろなコンポーネントがあり、それぞれのCを通してイベントをやりとりすると。 ■ [ruby] LiveConsole Debu.gs 実行中

    Route 477(2007-11-27)
  • プログラミング言語Ruby ― ありえるえりあ

    方針 Rubyをまったく知らない前提で始めます JavaJavaScript、elispのようなメジャーな言語と対比しながら説明します なるべく手を動かして目に見える形で説明を進めます 次回Ruby on Railsの勉強会をするので、それにつながることに重点を置きます 逆に言うと、RoRであまり使わない知識は流します。例えば、ファイル操作周りやスレッド周りなど 開発環境(2) .emacs.elに書くべき記述 ; ruby (autoload 'ruby-mode "ruby-mode") (setq auto-mode-alist (cons '("\\.rb$" . ruby-mode) auto-mode-alist)) (setq interpreter-mode-alist (append '(("ruby" . ruby-mode)) interpreter-mode-al

  • いやなブログ - スクリプト言語用のデバッガの使い方 - Ruby, Python, Perl

    スクリプト言語用のデバッガの使い方 - Ruby, Python, Perl スクリプト言語用の CUIのデバッガの使い方を簡単にまとめました。対象言語は Ruby, Python, Perl です。 私は C, C++ でプログラムを書いているときはデバッガ (主に GNU/Linux 上の gdb) を頻繁に利用します。しかし、スクリプト言語ではそれほどでもありません。これはおそらく次のような理由によります。 ビルドが不要なので printf デバッグが容易 (ある程度大きい C++ のプログラムではビルド時間が長いので printf の挿入はしんどい) 異常終了時にスタックトレースが表示される (Ruby, Python なら自動、Perl の場合は use Carp; $SIG{__DIE__} = \&Carp::confess; など) オブジェクトのインスペクトが簡単 (Ru

  • OOエンジニアの輪! ~ 第 38 回 笹田 耕一さんの巻 ~ | オブジェクトの広場

    現在のお仕事について ---最初に、今どういうお仕事をやっておられるか、お話していただけますか? 東京大学大学院の情報理工学系研究科創造情報学専攻で特任助教をしています。ここ、情報理工学系研究科秋葉原拠点は、創造情報学という最近できた専攻のラボになっているんですが、主にここに常駐しています。 そこで具体的に何をしているかといいますと、文科省の「先導的 IT スペシャリスト育成推進プログラム」というプロジェクトに従事しています。産業界から「きちんとわかる IT 技術者が少ないので大学もなんとかしてくれ」という要請があったらしく、文科省の公募により、数拠点が選ばれました。 で、東大と東工大と NII(国立情報学研究所)の 3 つの研究機関が協力してそのうちのひとつ「情報理工実践プログラム」を行っているんですが、私はそこに雇われている、というわけです。 この拠点では、実際にソフトウェアを作ること

    OOエンジニアの輪! ~ 第 38 回 笹田 耕一さんの巻 ~ | オブジェクトの広場
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • Route 477(2007-06-20)

    ■ [ruby][event] Ruby勉強会@関西-16「30分でわかるcallccの使い方」 先週末のRuby勉強会@関西で、Rubyにおけるcallccの使い方について発表させていただきました。 スライド: pdf ppt 継続の説明については「なんでも継続」がよく参照されるんだけど、 ちょっと説明がボトムアップすぎると思うので(僕も最初に読んだときは全然分からなかった)、「callccで何ができるか」という応用面から攻める 構成にしてみました。 最初は「継続かわいいよ継続」「それをすてるなんてとんでもない」と思ってたんだけど、 いろいろ調べてるうちになんでcallccが嫌われるのかが理解できてしまった。callccはかわいいけど、非常に手のかかる奴らしい。 しかも、面白い利用例はいっぱいあるけど実用的な例があんまりないんだよね^^;。 callccが無くなるとRubyの「かっこよさ

    Route 477(2007-06-20)
  • [動画]Ruby設計者まつもとゆきひろといろいろ語りたい - @IT情報マネジメント

    プログラム言語Rubyアジャイルソフトウェア開発の連携が生み出す新たな可能性を縦横無尽に語り合う。全6回シリーズの第1回。まつもとゆきひろ(ネットワーク応用通信研究所)がRubyの来歴を語り、平鍋健児(チェンジビジョン)がアジャイル開発とRubyの接点を模索する。角谷信太郎(永和システムマネジメント)が両者の橋渡しをする。 なぜ、「まつもとゆきひろ」か? 「RailsによるアジャイルWebアプリケーション開発」は一風変わった書籍である。RubyによるWebアプリケーションフレームワーク、Ruby on Rails解説の決定版である書は、書名に「アジャイル」を冠しながらも、文では具体的なアジャイルソフトウェア開発手法への言及がほとんどない。その理由は「アジリティ(agileであること)はRailsの構造の一部」であり「フレームワーク自体にアジャイル宣言の原則を語らせるように」執筆したと

    [動画]Ruby設計者まつもとゆきひろといろいろ語りたい - @IT情報マネジメント
  • 川o・-・)<2nd life

    Perl での print debug の方法の紹介がブーム(?)だったので、自分がよく行ってる Ruby での debug 方法7つについて書いてみます。 p ご存じの人も多い Kernel#p メソッド。これを使うとオブジェクトの内容を見やすい形で出力してくれます。 >> p ({:foobar => :baz}) {:foobar=>:baz}Object#inspect を使うと、p で出力するときと同じ文字列を String として取得できます。 >> puts ({:foobar => :baz}).inspect {:foobar=>:baz}初心者の頃この p での出力を使う方法がわからなくて困った記憶が…。 pp pp というライブラリを使うと、p より、より見やすい形式で出力してくれます。たとえば >> a = Array.new(10) { {:foobar => :

    川o・-・)<2nd life
  • Adding Properties to Ruby Metaprogramatically

    InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architects. View an example

    Adding Properties to Ruby Metaprogramatically
  • Ruby.NET コンパイラの開発

    Unmute @Julia320 Mute @Julia320 Follow Follow @Julia320 Following Following @Julia320 Unfollow Unfollow @Julia320 Blocked Blocked @Julia320 Unblock Unblock @Julia320 Pending Pending follow request from @Julia320 Cancel Cancel your follow request to @Julia320 Yuu Asakawa ⛓ ⚔️ 💜 🐍 @Julia320 浅川悠/人/声優/日にいます//V活中//ゲーム配信//I'm that Japanese VA. Google meYoutubehttp://bit.ly/2BXbCPK  Insta https://bit

  • Ruby .NET

    Programming Languages and Systems.

    ohyajapan
    ohyajapan 2007/02/01
    .NET用Rubyコンパイラ