Zuby

@zuby

ずびしいず

Public team

Community (0)
No community contribution yet

Joined on Oct 2, 2020

  • この記事はeeic (東京大学工学部電気電子・電子情報工学科) Advent Calendar 2020,及びTSG Advent Calendar 2020の23日目の記事です. 予定では今夏参加させていただいていたYahoo Japan!のインターンでやらせて頂いていたFIDO2,WebAuthn等の話を書くつもりで前々から少しずつ準備していたのですが,想定外に大作となってしまいどう考えても間に合わなことが判明したため急遽お題を変更し,@n4o847, @smallkirby_ と今学期のeeicの後期実験の1つである「大規模ソフトウェアを手探る」にて取り組んだRubyの小話をすることにしました.遅刻大変申し訳ありません. 本記事における挙動や仕様はRuby 2.7.2 で確認しており,コードについても本バージョンのものを参照しています.https://github.com/ruby/ruby/tree/5445e0435260b449decf2ac16f9d09bae3cafe72 Ruby には String#succ(あるいはString#next)という,文字列の後継の文字列を返すメソッドがあります. https://docs.ruby-lang.org/ja/latest/method/String/i/succ.html 例えば
     Like 1 Bookmark
  • ずびしいず チケット下書き background hogefuga reachabilty判定の導入によって改善されるもの
     Like  Bookmark
  • Zuby: mrubyへのendless rangeの導入とRubyにおける到達可能性判定の追加 目次 [TOC] はじめに この文章は東大工学部電気電子工学科・電子情報工学科(通称eeic)の3年後期実験の科目の1つである大規模ソフトウェアを手探る のレポートとして書かれたものです.実験の内容は端的に述べると10日間の実験期間で大規模なOSSを選び何らかの機能実装を試みるというもので,今回我々の班ではRubyの処理系であるCRuby, mrubyを手探りました.いくつかの機能の新規実装・改善を行いそのうち一部については実際にPull Requestを出しmergeをしていただけましたので,その一部始終を以下に記します. mrubyについて Rubyの処理系の一つであり,組込み向けに処理系のサイズや速度が最適化されているのが特徴です.CとRubyを用いて実装されており,CRubyと同様にMatzを中心にメンテがなされています.Rubyの言語仕様のうちJIS規格準拠のものをcoreとして実装しており,その他の機能は拡張という形で実装されています.とはいえ組み込み向けであるので拡張にすら移植されていないRuby(CRuby)の機能も多く存在します.以下のリポジトリで管理されています. https://github.com/mruby/mruby
     Like  Bookmark
  • 8, 9日目(2020/10/15-19) mruby/mrubyへのendless rangeの実装は無事mergeされました https://github.com/mruby/mruby/pull/5093 CRuby の Rangeの改善 ネタ rubyのRange#include のstringが特殊なケースを除いてString#uptoを呼び出しているため遅い $ time ruby -e '("a".."zzzzz").include?("zzzzz")'
     Like  Bookmark