View gist:995e79a3238014b43cdbe1c148b88d70
~/D/g/r/ruby.build23 > make
CC = clang
LD = ld
LDSHARED = clang -dynamic -bundle
CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens -pipe
XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT -fPIE
CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -I. -I.ext/include/x86_64-darwin16 -I../ruby/include -I../ruby
DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -fstack-protector -Wl,-u,_objc_msgSend -Wl,-pie -framework CoreFoundation
SOLIBS = -lgmp
Apple LLVM version 8.1.0 (clang-802.0.42)
View gist:50f67748d85c814336c92a8b697b2685
This file has been truncated, but you can view the full file.
+ export DUALCASE
+ test -n ''
+ case `(set -o) 2>/dev/null` in
+ :
+ set -o posix
+ as_nl='
+ export as_nl
View gist:d1be5afb37ffb51b9959446601a87bbe


..\ruby\win32\configure.bat --without-ext=+,dbm,gdbm,readline --enable-bundled-libffi --with-zlib-include=C:/opt/zlib-1.2.11 --with-zlib-lib=C:/opt/zlib-1.2.11/x86 --with-openssl-include=C:/opt/libressl-2.5.3-windows/include --with-openssl-lib=C:/opt/libressl-2.5.3-windows/x86


..\ruby\win32\configure.bat --without-ext=+,dbm,gdbm,readline --enable-bundled-libffi --with-zlib-include=C:/opt/zlib-1.2.11 --with-zlib-lib=C:/opt/zlib-1.2.11/x64 --with-openssl-include=C:/opt/libressl-2.5.3-windows/include --with-openssl-lib=C:/opt/libressl-2.5.3-windows/x64

View zsh-to-fish.rb
require 'yaml'
r = {}'dot.zsh-history') do |f|
r = f.each_line.inject([]) do |a, l|
a << { "cmd" => l[15..-1].to_s.scrub.strip, "when" => l[1..11].to_i }
end'fish_history', 'w'){|f| f.write r.to_yaml(options = { line_width: -1 })}
View gist:dc15a0a28fb25aa77533eb274a2bcbf0
% docker run --rm -t hsbt/all-ruby /all-ruby/all-ruby -e 'p RUBY_DESCRIPTION'
ruby-0.49 -e:1: syntax error
#<Process::Status: pid 6 exit 1>
ruby-0.50 -e:1: syntax error
#<Process::Status: pid 7 exit 1>
ruby-0.51 -e:1: undefined method `p' for "main"(Object)
#<Process::Status: pid 8 exit 1>
ruby-0.54 -e:1:in method `p': undefined method `p' for "main"(Object)
#<Process::Status: pid 9 exit 1>
ruby-0.55 -e:1: undefined method `p' for "main"(Object)
View gist:731ab0328ca127b31eefef773fbcb77a
compiling ../ruby/enc/ascii.c
compiling ../ruby/enc/us_ascii.c
error: unable to open output file 'enc/ascii.o': 'No such file or directory'
1 error generated.
make: *** [enc/ascii.o] Error 1
make: *** Waiting for unfinished jobs....
error: unable to open output file 'enc/us_ascii.o': 'No such file or directory'
1 error generated.
make: *** [enc/us_ascii.o] Error 1

Ruby 3 で本当にやりたいこと - Matz

  • 全てを捨てない、互換性は維持、進歩は続ける

  • マルチコア、データ、コードスケーラビリティ

  • 際粒度で低コスト(erlang ぽいやつ)がある

  • ベンチマークを作ってもらっている(ただし進捗はよくわからない)

  • 型は冗長性が高いから書きたくない

  • lint みたいな別ツールというのも妥協点として考えている

  • 型によるパフォーマンス向上は考えない

View gist:4ec146ebdec32028dc871ea9f479c72d
% g push staging
Counting objects: 8, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (8/8), 1.51 KiB | 0 bytes/s, done.
Total 8 (delta 5), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote: -----> Ruby app detected
View ruby-build.20170324090136.6636.log
/var/folders/rk/sr8p03fj4wq3f7l30gvg0r380000gn/T/ruby-build.20170324090136.6636 ~
~/.anyenv/envs/rbenv/cache /var/folders/rk/sr8p03fj4wq3f7l30gvg0r380000gn/T/ruby-build.20170324090136.6636 ~
d3cd2e618c..96069e9573 trunk -> trunk
/var/folders/rk/sr8p03fj4wq3f7l30gvg0r380000gn/T/ruby-build.20170324090136.6636 ~
Cloning into 'ruby-trunk'...
warning: --depth is ignored in local clones; use file:// instead.
/var/folders/rk/sr8p03fj4wq3f7l30gvg0r380000gn/T/ruby-build.20170324090136.6636/ruby-trunk /var/folders/rk/sr8p03fj4wq3f7l30gvg0r380000gn/T/ruby-build.20170324090136.6636 ~
checking for ruby... /Users/usr0600238/.anyenv/envs/rbenv/shims/ruby