From 9f544efc1e0f0a72de301d4f529143f1c8cb5d0d Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Sat, 1 Jun 2013 15:06:00 +0900 Subject: [PATCH] add yhara1: Worst abuse of constants --- {yhara => yhara1}/authors.markdown | 0 yhara1/entry.rb | 28 +++++++++++++++++++++++++++ yhara1/remarks.en.markdown | 23 ++++++++++++++++++++++ yhara1/remarks.markdown | 24 +++++++++++++++++++++++ yhara2/authors.markdown | 3 +++ {yhara => yhara2}/encode.rb | 0 {yhara => yhara2}/entry.rb | 0 {yhara => yhara2}/remarks.en.markdown | 0 {yhara => yhara2}/remarks.markdown | 0 9 files changed, 78 insertions(+) rename {yhara => yhara1}/authors.markdown (100%) create mode 100644 yhara1/entry.rb create mode 100644 yhara1/remarks.en.markdown create mode 100644 yhara1/remarks.markdown create mode 100644 yhara2/authors.markdown rename {yhara => yhara2}/encode.rb (100%) rename {yhara => yhara2}/entry.rb (100%) rename {yhara => yhara2}/remarks.en.markdown (100%) rename {yhara => yhara2}/remarks.markdown (100%) diff --git a/yhara/authors.markdown b/yhara1/authors.markdown similarity index 100% rename from yhara/authors.markdown rename to yhara1/authors.markdown diff --git a/yhara1/entry.rb b/yhara1/entry.rb new file mode 100644 index 0000000..a2deb54 --- /dev/null +++ b/yhara1/entry.rb @@ -0,0 +1,28 @@ +def _(&b)$><<->(x){x ? (String===x ?x.upcase: +(Class===x ? x : x.class).name[$a?0:($a=5)]): +" "}[ begin b[];rescue Exception;$!;end ] end + +_ { return } +_ { method(:p).unbind } +_ { eval "{ " } +_ { Thread.current.join } +_ { nil } +_ { select } +_ { ruby } +_ { self.class } +_ { Thread.current.group } +_ { nil.to_h } +_ { "\xFF".encode("big5") } +_ { raise } +_ { [0][1] } +_ { Regexp.compile "*" } +_ { RUBY_COPYRIGHT[32] } +_ { binding } +_ { :s.class.name[1] } +_ { warn } +_ { [a: :b][0] } +_ { methods } +_ { IO.class } +_ { {}.fetch(0) } +_ { open " " } +_ { 1000000.chr } diff --git a/yhara1/remarks.en.markdown b/yhara1/remarks.en.markdown new file mode 100644 index 0000000..bd821e8 --- /dev/null +++ b/yhara1/remarks.en.markdown @@ -0,0 +1,23 @@ +### Remarks + +Just run it with no argument: + + ruby entry.rb + +I confirmed the following implementations/platforms: + +* ruby 2.0.0p0 (2013-02-24 revision 39474) [x86\_64-darwin12.2.1] + +### Description + +It prints JUST ANOTHER RUBY HACKER¡£ + +### Internals + +This script uses characters in constants in Object class. It +intentionally raises some exceptions. The second 'U' comes from +RUBY\_COPYRIGHT, "Yukihiro Matsumoto". + +### Limitation + +This program does not work on JRuby because "return" does not raise an exception. diff --git a/yhara1/remarks.markdown b/yhara1/remarks.markdown new file mode 100644 index 0000000..99cb4b5 --- /dev/null +++ b/yhara1/remarks.markdown @@ -0,0 +1,24 @@ +### Remarks + +引数ãªã—ã§æ™®é€šã«å®Ÿè¡Œã—ã¦ãã ã•ã„。 + + ruby entry.rb + +以下ã®å®Ÿè£…・プラットフォームã§å‹•ä½œç¢ºèªã—ã¦ã„ã¾ã™ã€‚ + +* ruby 2.0.0p0 (2013-02-24 revision 39474) [x86\_64-darwin12.2.1] + +### Description + +JUST ANOTHER RUBY HACKERã¨è¡¨ç¤ºã—ã¾ã™ã€‚ + +### Internals + +Objectクラスã®å®šæ•°ã‹ã‚‰æ–‡å­—を拾ã£ã¦ã„ã¾ã™ã€‚ +ãã®ãŸã‚ã«ã€æ„図的ã«ä¾‹å¤–ã‚’èµ·ã“ã—ã¦ã„ã¾ã™ã€‚ +「Uã€ãŒä¸€ã¤ã—ã‹è¦‹ã¤ã‹ã‚‰ãªã‹ã£ãŸã®ã§ã€ã‚‚ã†ä¸€å€‹ã¯RUBY\_COPYRIGHTã® +「Yukihiro Matsumotoã€ã‹ã‚‰å–ã£ã¦ã„ã¾ã™ã€‚ + +### Limitation + +JRubyã¯returnãŒã‚¨ãƒ©ãƒ¼ã«ãªã‚‰ãªãã¦ã€å‹•ãã¾ã›ã‚“ã§ã—ãŸã€‚ diff --git a/yhara2/authors.markdown b/yhara2/authors.markdown new file mode 100644 index 0000000..c0adc2b --- /dev/null +++ b/yhara2/authors.markdown @@ -0,0 +1,3 @@ +* Yutaka Hara + * yutaka.hara.gmail.com + * cctld: jp diff --git a/yhara/encode.rb b/yhara2/encode.rb similarity index 100% rename from yhara/encode.rb rename to yhara2/encode.rb diff --git a/yhara/entry.rb b/yhara2/entry.rb similarity index 100% rename from yhara/entry.rb rename to yhara2/entry.rb diff --git a/yhara/remarks.en.markdown b/yhara2/remarks.en.markdown similarity index 100% rename from yhara/remarks.en.markdown rename to yhara2/remarks.en.markdown diff --git a/yhara/remarks.markdown b/yhara2/remarks.markdown similarity index 100% rename from yhara/remarks.markdown rename to yhara2/remarks.markdown