https://github.com/r7kamura/ruboty • Customizable by plugins written in Ruby • Ruboty lives in ruby-jp.slack.com ◦ Join us from https://ruby-jp.github.io/! ◦ It is developed in https://github.com/pocke/ruboty-ruby-jp.
program examples: ◦ Ix, Kxy, Sxyz ◦ S(K(SI))Kxy • It replaces itself with 3 rules ◦ The rules are S, K and I • I’ll describe rule with reversed order • It manipulates a string in this slide, but actually it manipulates a tree in general
handlers.” • Like alias • example ◦ ruboty replace hello (.+) with echo こんにちは \1 さん ◦ “ruboty hello pocke” will be replaced with “ruboty echo こんにちは pocke さん”
make an infinite loop with them easily • Just say the following command⚠ ◦ ruboty replace loop with echo ruboty loop • If you say “ruboty loop”, ruboty says “ruboty loop”, then ruboty says “ruboty loop”, then ruboty says “ruboty loop”, then ruboty says “ruboty loop”, then ruboty says “ruboty loop”, then ruboty says “ruboty loop”,
true do … end” • And, we already have String#gsub! by ruboty-replace • If we can implement SKI only by “while” and gsub!, we can implement SKI with the plugins
We can implement SKI in Slack without “code” • For more information: ◦ The Ruby program: https://bit.ly/2RI1Ckd ◦ Japanese blog: https://bit.ly/2vs0fNE Thanks for listening!