Skip to content

Instantly share code, notes, and snippets.

@tompng
Created July 24, 2024 14:56
Show Gist options
  • Save tompng/da9b91a6c066ac848e5c35bb174e53c1 to your computer and use it in GitHub Desktop.
Save tompng/da9b91a6c066ac848e5c35bb174e53c1 to your computer and use it in GitHub Desktop.
require 'ripper'
$VERBOSE = nil
tokens = <<'S'.split
def if true false nil + - = a A :: '' "#{
class module ? : . ( [ { -> | & * , / % ! @ $ ; < <<
S
loop do
code = (tokens.sample(9) + [' ']*5).shuffle.join
# code = tokens.sample(9).join(' ')
Ripper.tokenize code
rescue => e
puts e
puts "\e[31;1m#{code.inspect}\e[m"
end
__END__
def % $ * '' :: A , a
def class | * '' :: A false <<
def module | * % ? :: A /
def / & . % < :: A =
+ def << % ? * '' :: A
def /{<< '':: A=<
def ->% ::A=false nil;
<< def if $& '':: A=
def !module*'':: A%+
def !( if'':: A=-
def nil!,*<<true:: A
+def %false (* '':: A
def->'' ::A =| $-
def%[? <<module ::A =
? {=def ->''::A,
def class!='':: A, (
def nilclass true* ''::A:
;def a, '':: Anil=
def<''!% :: A= ?
-def module< &% ::A,
def* module ; ''::A ,%
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment