タグ puts
人気順 10 users 50 users 100 users 500 users 1000 usersVS Codeでターミナルからの入力を伴うRubyプログラムをデバッグ実行する方法 - Qiita
print 'input number 1:' a = gets.to_i print 'input number 2:' b = gets.to_i puts "answer = #{a + b}" これをVS Codeの用デバッガ(VSCode rdbg Ruby Debugger)を使ってデバッグ実行する方法を説明します。 実行環境 以下の環境で動作確認しています。 Ruby 3.2.2 debug.gem 1.8.0 VSCode rdbg Ruby Debugger v0.2... 続きを読む
もう puts/p をデバッグに使わない! デバッグライブラリ IceCream の Ruby 版 - Qiita
先日、Python 向けのデバッグライブラリ IceCream が話題になっていました。 Python 以外にもいくつかの言語版があるようですが、残念ながら Ruby 版が無い。というわけで作ってしまいました。 Ricecream (icecream-ruby) はじめに まず、このライブラリはいわゆる「print デバッグ」1の代替となるものです。 そもそも本... 続きを読む
コンパイラは関数のインライン展開を☓☓段で力尽きる - Qiita
はじめに 「コンパイラって、関数のインライン展開を何段までやってくれるんでしょうか?これってトリビアになりませんか?」 このトリビアの種、つまりこういうことになります。 「コンパイラに多段呼び出しの関数を食わせてインライン展開させた時、☓☓段で力尽きる」 実際に調べてみた。 ソース 関数の多段呼び出しをするコードを吐くRubyコードを書いた。 num = ARGV [ 0 ]. to_i puts... 続きを読む
sudo をつけると SIgnal.trap がおかしくなる件 - sonots:blog
結論からいうと sudo が悪かった。2012 年に直ってる。発生状況こんなかんじの Ruby コードを書く(最初、ruby の問題かと思っていた)Signal.trap('INT') { puts 'foo' } 10.times do sleep 1 end普通に実行すると期待通りに trap される$ ruby test.rb [Ctrl-c] foo [Ctrl-c] foo sudo を... 続きを読む
Big Sky :: C言語で可変個引数を型拘束したい
C言語で可変子引数扱う場合は va_start/va_arg/va_end を使うのだけど... #include <stdio.h> #include <stdarg.h> void foo(int n, ...) { va_list list; int i; va_start(list, n); for(i = 0; i < n; i++) puts(va_arg(list, char*));... 続きを読む
Big Sky :: C言語で文字列を自動伸張してくれるライブラリ「sds」
C言語の文字列伸張は慣れないとコストの掛かるコーディングになりがちです。 またそういった文字列ライブラリというのは、直接 puts や printf に放り込めないという難点があります。 しかし sds というライブラリは異なります。 antirez/sds - GitHub Simple Dynamic Strings SDS is a string library for C designed... 続きを読む
ターミナルウィンドウに雪を降らせよう! - Macの手書き説明書
ターミナルウィンドウに雪を降らせるコードがOS X Dailyに記載されていましたのでご紹介します。ターミナルを起動して以下のコードをコピペして実行します。ruby -e 'C=`stty size`.scan(/\d+/)[1].to_i;S=["2743".to_i(16)].pack("U*");a={};puts "\033[2J";loop{a[rand(C)]=0;a.each{|x,... 続きを読む
mrubyをC拡張でRubyに組み込む - ( ꒪⌓꒪) ゆるよろ日記
2012-11-14 mrubyをC拡張でRubyに組み込む ruby やっつけで適当に書いてみた。yuroyoro/rmruby · GitHub一体何がしたいのか……。 irb(main):001:0> require 'rmruby' => true irb(main):002:0> Rmruby.eval('3.times do |n| puts "hello #{n}!" end') h... 続きを読む
[Polyglot][Ruby][JavaScript]JavaScriptとして動作するfizzbuzz.rb - ゆとRubyist日記
LL Decadeで、Polyglotの話を聞いて面白かったので、私もやってみました。 そこで、FizzBuzzを書いてみました。 fizzbuzz.rbですが、JavaScriptとしても動作します。Rubyのバージョンは1.9です。 'use strict'; "#{define_singleton_method(:var){|*v|}||";/*"}" # */ puts=console.l... 続きを読む
超簡単に Ruby プログラムを exe にする新しい方式 (構想) - まめめも
exerb は 1.9 に対応してないし、いろいろオーバースペックだと思う。ocra はテンポラリフォルダに展開して実行するのがダサすぎて論外。(参考)ということで、すごくシンプルに Ruby プログラムを exe 化する方式を考えてみました。 デモ # t.rb puts "test!" これを exe にしたい。こうします。 C:\Ruby>copy /B ruby.exe+t.rb t.ex... 続きを読む
Big Sky :: mruby で自前の組み込み関数を呼び出してみた。
FizzBuzzに並んで有名な教育向けな題材、Acme::Oppaiです。 #include <mruby.h> #include <mruby/proc.h> #include <compile.h> static mrb_value oppailib_oppaifunc(mrb_state *mrb, mrb_value self) { static int i = 0; puts(i++ %... 続きを読む
Mac Rubyではじめる!Macアプリ開発入門
Mac Rubyではじめる!Macアプリ開発入門 — Presentation Transcript > p "Hello""Hello"> puts "Hello"Hello> print "Hellon"Hello> printf "%sn", "Hello"Hello > "Hellon""Hellon"> 123456123456> 0b101111> :Hello:Hello > hei... 続きを読む