[JJUG CCC 2022 fall] Fargate上のJVMからCPUを認識するまで 〜正しく認識されないCPUの謎を追え〜
Rubyのサンドボックスを作って、evalするBotを作った posted at 2018-07-10 01:04:56 +0900 by kinoppyd 注意:安全じゃありません RubyのSnadbox環境 Sansbox環境とは、外部から入力されたプログラムを安全に実行する環境のことです。任意のコードを入力可能な場所で、いきなり system(“rm -rf ~/) とか入力されて、それが本当に実行されたら困りますよね? 自分は困ります。ですが、外部から入力されたコードを安全に実行する環境というのはそれなりに需要があり、最もわかりやすいところではJavaScriptを実行するブラウザ、わかりにくいところでは今回作ろうとしているeval用のbotです。 ブラウザに関しては、インターネットという非常に治安の悪い場所から送られてくるコードを自分の環境で実行するので、サンドボックスが必要で
The Ruby Reference This book is a reference for the Ruby programming language. It describes the language structure, its core classes and standard library, and provides some additional useful information and links for Ruby development. The Reference is intended to be always up-to-date with the current Ruby version. Most of the reference content is taken directly from Ruby documentation and reorgani
The English version of this article is available here: medium.com 2/4(日)に、去年のRubyKaigiが終わった直後の新幹線で開発を始め10月に公開したJITコンパイラをRubyのtrunk (2.6.0-dev) にマージし、昨日TD Tech Talk 2018で以下のような内容の発表をしました。 speakerdeck.com まだそれほど速くできていないということもあり、私はTwitterでのみ共有して満足していたのですが、海外の方がいくつか記事を書いてくださいました。 Playing with ruby's new JIT: MJIT - John Hawthorn Ruby’s New JIT – Square Corner Blog – Medium とても丁寧に書かれているので、私の記事がわかりにくければ
このブログにはGvizに関する大量の記述があるのだけれどもまともにタグ付けされてないサイト検索もできないと非常にアクセスビリティの悪い有り様でまあ本来なら気合を入れてひとつその全体解説たる記事を書き下ろしてここに公開!と宣言してついでにEPUBにまとめて一攫千金と相成りたいところ如何せん筆がぁ筆がぁっつって一向に気持ちがそちら方面に向かわずにおるわけで。 そこで代わりといってはなんですが「Gvizの目次 - Rubyの世界からGraphvizの世界にこんにちは!」と題して過去の記事をここにまとめて一覧できるように致しましたのでGvizをご利用頂いていていままで右往左往させられていた方あるいは使い方がわからん何が描けるのかわからん全く意味がわからんという方あるいは将来においてGvizに興味を持たれる可能性のある方居られましたら是非ともこのページを基点として各ページに飛んで頂きたくお願い申し上
以前からずっと疑問に思っていた事があった。 ruby の後置 if/unless で条件が偽になった場合でも代入構文が実行されるのはどうしてだろう 例えば以下のコードを irb や pry で実行してみて欲しい。 a = 1 if false 続けて a をタイプする。すると nil が表示される。 僕のこれまでの理解だと後置if/unlessは、ステートメントに作用するのでそのステートメント自体が無効になる、つまり代入自体されなかった事になるという理解だった。ruby のパーサのソースコードを見ても後置ifはステートメントに作用している様だった。 | stmt modifier_if expr_value { /*%%%*/ $$ = new_if($3, remove_begin($1), 0); fixpos($$, $3); /*% $$ = dispatch2(if_mod, $
RubyKaigi 2016が始まりました!スポンサーであるグッドパッチもエンジニア数名で京都に来ています。 早速、今朝発表されたRubyの父Matzによる基調講演のレポートをお送りいたします。 Ruby3の柱 東京オリンピックの年にリリースすることを目指して開発されているRuby3には大きく3つの柱があります。 型(Typing) パフォーマンス(Performance) 並列処理(Concurrency) 今回の基調講演は、この中のひとつ「型」についての話です。 プログラミング言語の変遷 まずはじめに、プログラミング言語の「型」という側面についての振り返りがありました。 プログラミング言語にも時代によって流行りがあり、それは振り子のように繰り返されています。 かつては動的言語のSmalltalkやLispがあり、次に静的言語のJavaが流行し、JavaScriptやRubyのような動的
これは プリキュア Advent Calendar 2013 の16日目です。 はじめに 12/16はキュアピースの中の人の金元寿子さんの誕生日です。おめでとうございます!!! ピカピカぴかりんじゃんけんぽん!キュアピース! #いい夫婦の日なので嫁を晒す #いい夫婦の日なので嫁を晒す 会社の方 トリプルピース 15日目 id:tdakak さんの ハートキャッチプリキュア!の好きなところ でした 16日目:Rubyでプリキュアを作った Rubicure*1というプリキュアのgemを作りました。 プリキュアハッカソン で id:drillbits さんが作っていた pycure にインスパイヤされてRuby版を作りました。(Ruby 2.0以上必須) github: https://github.com/sue445/rubicure rubygems: https://rubygems.o
更新情報: 2013/11/19: 初版公開 2021/01/08: 訳文見直し、追記 こんにちは、hachi8833です。今回は、自分が知りたかった、Active Recordモデルのリファクタリングに関する記事を翻訳いたしました。1年前の記事なのでRails 3が前提ですが、Rails 4以降でも基本的には変わらないと思います。リンクは可能なものについては日本語のものに置き換えています。 なお、ここでご紹介したオブジェクトは、app以下にそれぞれ以下のようにフォルダを追加してそこに配置します。 注記: 以下は使われそうなフォルダを列挙しただけであり、実際にはこの一部しか使いません。 Value Object Service Object Form Object Query Object View Object Policy Object Decorator ⚓ 肥大化したActive
2011年01月08日23:09 Ruby Rubyでメタプログラミング 〜暗黙的に呼ばれるto_procメソッド 先日、こんな感じの処理に遭遇しました。はて、、何じゃこりゃ・・(´・ω・`) ポカーン (1..5).each(&method(:puts)) と思って調べたのでまとめておきます。この処理が理解できれば一人前です。きっと。 ブロックはオブジェクトではない Ruby では大抵のものがオブジェクトですが、オブジェクトではないものも一部あります。ブロックがその一つです。 例えばこんな風にブロックを定義することは出来ません。 block = { "test" } # in:1: odd number list for Hash そもそも Ruby の構文ではハッシュとして扱われるためブロックを直接生成することは出来ません。Block.new みたいな構文も無いので、ブロックは ti
ActiveResourceモデルによるAPIの隠蔽の怖い話�~レスポンスタイムへの致命的影響~ at #shinjukurbKoichiro Sumi
The online home for your community We make it easy to connect and collaborate anytime, anywhere Build your community You’re in good company Every day 50 new Discourse forums are created Discourse now powers over 20,000 online communities of all shapes and sizes, including: See more of our customers Discourse is a world-class, modern, community platform that has been my choice for many of my client
はじめに 先月、CodeIQにビンゴカード作成問題を出題しました。 CodeIQに「ビンゴカード作成問題」を出題しました。みなさんの挑戦をお待ちしてます! - give IT a try このビンゴカード作成問題、ありがたいことに50人もの方が解答を送ってくれました。 挑戦してくださったみなさん、どうもありがとうございました。 前回のエントリでは優秀作品ベスト3を発表しました。 今回のエントリはその続編です。 一部の解答(5本)について、僕が実際にいただいた解答を採点しつつ、リファクタリングする様子を動画に撮っておいたので、その様子をお見せしちゃいます。 おさらい「ビンゴカード作成問題」とは? ビンゴカード作成問題とはその名の通り、Rubyを使ってビンゴカードを出力する問題です。 Bingo.generate_cardというメソッドを呼ぶと以下のような文字列を出力する、というのが要求仕様で
はじめに: 遠回りせずに「近道」を探す RubyやRailsを始めたばかりの人は、もっと短く書く方法や便利な標準ライブラリの存在を知らずに遠回りした書き方をしてしまいがちです。 そこで、RubyやRails初心者の人によく見かける「遠回り(または車輪の再発明)」と、それを回避する「近道」をいろいろ集めてみました。 2013.11.06 追記 この投稿を書くに至った経緯などを自分のブログに書きました。 こちらも合わせてどうぞ! 昨日Qiitaに投稿した記事は普段のコードレビューの副産物 - give IT a try Ruby編 以下はRubyの標準機能を使ったイディオムやメソッドです。 Railsプロジェクトでもそれ以外でも使えます。(Ruby 1.9以上を想定) 後置ifで行数を減らす
Ruby 1.9で導入されたObject#tapはRuby 1.8でも1.8.7から使えるようになった。 tapメソッドとは何かというと、自分自身にブロックを作用させて自分自身を返すだけのメソッドだ。つまり副作用専門メソッド。定義はいたって簡単、コレ。 class Object def tap yield(self) self end end たとえば、1〜4の二乗のうち10以上のものを求めたいんだけど、デバッグ時とかで途中経過である1〜4の二乗を表示してほしいなんて場合はこんな感じに。いらなくなったらtapの部分を消せばいい。楽チン。 ary = [1, 2, 3, 4] ary.map{|x| x**2}.tap{|a| p a}.select {|x| x>10 } # => [16] # >> [1, 4, 9, 16] ほかにも、破壊的メソッドを適用した後で自分自身を返す場合にも
2007-08-01 (Wed)#1「ボタンを消せ」――Appleのジョブズ氏が追求する命題 「東京のAppleストアのエレベータには階数ボタンがない」そうな。いってみるか? それはそれとして、ボタンに限らず、ユーザの入力を極力減らすのは基本だろうと思う。 ただ、入力しなければならない情報が同じなら、その通り道をどのような広さ・狭さに設計するかは問題だろう。 すべての情報を 2進にエンコードして、ボタンふたつ (あるいはメソッドふたつ) で伝えたいというひとはいない。 マウスのボタンをひとつにするかふたつにするかというのは、通り道に関する問題だと思う。 ユーザインターフェースのメニューに関する知見や、Ruby の API の経験では、通り道は、広く、浅くするのがよいという見識がある。API でいえば、やりたいことを直接表現するたくさんのメソッドがあったほうがいいし、やりたいことがひとつしか
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く