Initial commit

This commit is contained in:
Veit Heller
2014-06-15 21:33:59 +02:00
parent 72991fee35
commit 3b800a6e12

65
_/_.py Normal file
View File

@@ -0,0 +1,65 @@
#import atexit
def to_i(num, b):
n = 0
for d in num:
if int(d) > b:
return 0
n = b * n + int(d)
return n
def to_c(digit):
if digit < 10:
return str(digit)
return chr(ord('a') + digit - 10)
def to_s(number, base):
if number < 0:
return '-' + to_s(-number, base)
(d, m) = divmod(number, base)
if d > 0:
return to_s(d, base) + to_c(m)
return to_c(m)
def chunks(li, n):
r = []
for i in range(0, len(li), n):
r.append(li[i:i+n])
return r
def __script__(src):
code = []
src = [list(to_s(ord(c), 6).rjust(3, "0")) for c in src]
src = [int(x, base=6)+1 for sub in src for x in sub]
for n in src:
if code:
if len(code[-1]) + n + 1 >= 60: code.append("")
else: code[-1] += " "
code[-1] += ("_" * n)
else: code.append("_" * n)
return "\n".join(code)
def __ruby_script__(src):
return "require '_'\n\n" + __script__(src)
def __py_script__(src):
return "import _\n\n" + __script__(src)
code, fragment = [], []
def to_be_exec(name):
global code
global fragment
code.extend(fragment)
del fragment[:]
for i in name.split():
fragment.append(str((len(i)-1)))
_()
def _():
global code
global fragment
code.extend(fragment)
eval(''.join([chr(to_i(c, 6)) for c in chunks(''.join(code), 3)]))
code, fragment = [], []
#atexit.register(_)