Ruby Hello World
= 1 | |
= + | |
= * + | |
= * | |
= | |
[ *( + )+ , | |
= * + , | |
= * + - , | |
, | |
= + , | |
* + + , | |
* - * + + , | |
, | |
+ + , | |
, | |
* , + + , | |
] | |
puts .map(&:chr).join |
This comment has been minimized.
This comment has been minimized.
@pboling Yes, you need to ensure that you're actually feeding the invisible unicode characters to the interpreter; you may be inadvertently stripping them during the copy-and-paste. (It appears that some or all online interpreters do this.) See this StackOverflow question. |
This comment has been minimized.
This comment has been minimized.
It would be interesting to know if there are particular versions of Ruby that don't treat special whitespace unicode points as valid identifier characters. I think a Ruby feature-request to make future versions of Ruby treat all unicode whitespace as real whitespace (i.e. assume it indicates a separation between two tokens but otherwise ignore it) would probably be helpful. |
This comment has been minimized.
This comment has been minimized.
Nice! Here's a readability trick: ruby -p -e '$_.gsub!(/ +/," ").gsub!(/\u00a0+/){|m| "v#{m.size}"}' < helloworld prints v1 = 1
v2 = v1+v1
v3 = v2*v2+v1
v4 = v3*v2
v5 =
[v4 *(v3+v2)+v2,
v7 = v4*v4+v1,
v8 = v4*v4+v4-v2,
v8,
v7 = v7+v4,
v4*v2+v4+v2,
v4*v4-v2*v4+v3+v2,
v7,
v7+v1+v2,
v8,
v4*v4, v4+v1+v2,
v4]
puts v5.map(&:chr).join |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
That is not valid Ruby, failure on first line.
I am sure it is based on something that did work for someone somehow, anyone know how to fix it?