mmcのスレッド対応
はじめに Rustでマルチスレッドプログラミングを行うとデータがスレッド間で競合するところはMutex型のtraitでくるまないと型エラーになるので安全であるという話を良く聞きます。これはとても...
28 search resultsShowing 1~20 results
はじめに Rustでマルチスレッドプログラミングを行うとデータがスレッド間で競合するところはMutex型のtraitでくるまないと型エラーになるので安全であるという話を良く聞きます。これはとても...
「私には夢がある。それは、いつの日か、私の4人の幼い子どもたちが、静的型の有無によってではなく、機能そのものによって評価されるプログラミング言語を使うという夢である。」 https://amer...
「愚者は経験に学び、賢者は歴史に学ぶ」はビスマルクさんの言葉ですが(ググった)、愚者である私は当然経験から学んでおります。経験から学ぶととかく失敗が多いのですが(これも経験から学んだ)、今回は私...
ExcelScanとは ExcelScan ( https://github.com/miura1729/excelscan )は、RubyからExcelを簡単に使うためのライブラリです。出来る...
現在、mmcというmrubyをC(に限らないのですが)に変換するプログラムを書いています。抽象実行とエスケープ解析で、GCのサポートや、selfが常に渡されることなどを除いて、手書きのCに近いコ...
はじめに タイトルはお約束の釣りでただし、AIはAbstract Interpretationですって奴です。 ruby-signatureを抽象実行で生成しようってのがうまくいきそう(うまくい...
私ごとですが、12月の9日に50歳になりました。そこでというわけでもないのですが、25年くらい前のプログラミング言語の技術について書きたいと思います。お話は大学院で学んだ動的型付けの並列オブジェ...
はじめに 名古屋Ruby会議4に出られた人たちの中には、今作っているRubyコンパイラのmmcはCより速いのが最低条件です とかいうとち狂った発言を聞いた方もいらっしゃるかもしれません。大部分...
この記事は言語実装 Advent Calendar 2018 13日目の記事です。前日は、raviqqeさんのLLVMでの効率的なUnion型の扱いでした。すっかりLLVM IRが読めなくて愕然...
言語実装 Advent Calendarの13日目のRubyをCに変換する話という記事を書く予定です。これは今作っているmrubyのJIT2(仮称)の説明なんですが、何を考えてこんなものを作った...
mrubyのJIT2(仮称)なるものを作ろうとしているのだが、考えがまとまらないので取りとめもなく書く。真に受けて何か損害をこうむっても知らん、その代わり何かいいことがあっても私は何も貰えない。...
動的型付けの言語のJITコンパイラの中でも魔術度が圧倒的に高いLuaJITの内部について調べました。 LuaJITの概要 LuaJITはこんな流れで実行されます 処理 生...
はじめに かれこれ5年ほどmruby にTracing JITを加えた "mrubyのJIT"を作っています。あまり話題にはならないのですが、その理由としてmrubyのJIT全体を説明した文章...
はじめに twitterでRuby版の深層学習のライブラリがあったらいいねーというツイートがあって、私もあったらいいねーと思ったので深層学習ってどうやるかよく知らないのですが、mrubyのJIT...
はじめに 長い間mrubyのJITは32bitのx86のみサポートでしたが、最近64bitのx86アーキテクチャ(以下x64)も対応するようになりました。64bit化しようと思った理由はh2o ...
あまり知られていませんが(Googleとtwitterの検索を調べた結果)、mrubyには末尾再帰のための処理が入っています。でも、ほとんどテストされていないので基本的には動きません。昔ちょっと...
mrubyのJITの最適化 movの削除 RITE VMで MOVE R2, R0 ADDI R2, 1 のようなコードを考えてます。この場合、正直にR2を代入するのは無駄です。そこで、コード...
mrubyでメソッドをインライン化を実現するためのmrbgemです。 ソースはここにあります。 https://github.com/miura1729/mruby-inline 効果は、速くな...
はじめに mruby/cは少々効率を犠牲にしても省メモリに振ったユニークな処理系だと思いました。そんな処理系の命令セットがmrubyと同じなんて一貫性が無いので省メモリに振った命令セットを考えま...
mrubyを使っていてsegmentation faultとか出て困ったことは無いでしょうか。こういう場合にgdbでデバッグするノウハウを書きます。gdbの使い方についてはここでは説明しません。...
28 search resultsShowing 1~20 results
Qiita is a knowledge sharing service for engineers.