All pastes #401416 Raw Edit

dupdog.t22

public text v1 · immutable
·published 2007-03-19 10:53 UTC
rendered paste body
/=1/=9/!
  /^(.*)=x/M$1/
  # Don't use quoting for this program, as it'll just disturb the count.
  # (It doesn't matter what we use for each character, as there are only
  # four distinct possibilities.) Make sure this doesn't clash with what
  # we use later!
  /=[^x~?!]/*/
  /=([^x])/$1/
  # Mfit 
  # ? does nothing on Mfit if the program has an even length.
  /^M\?((..)*.)$/S$1/
  # Otherwise, it cycles ? to ! to ~ to ?.
  /^M\?((..)*)$/C%%$1/
  /%%\?/!%%/
  /%%!/~%%/
  /%%~/?%%/
  /^C(.*)%%/S$1/
  # ~ duplicates the source code.
  /^M~(.*)$/S$1$1/
  # Anything else prints the length of the source as an ASCII character.
  /^M(.*)()/$
  /^M/P$g:128:/
  /^P([0-9]+):(128):/#
  /^P([0-9]+):(128):/P$m:0:/
  /^P([0-9]+):(0):/#
  /^P([0-9]+):(0):/P-$c-/
  /^P-([^a]|[^b])-/|
  /^P-([^a]|[^b])-./S/
  # Shanty
  # ! duplicates the source code.
  /^S!(.*)$/M$1$1/
  # ? reverses the source code.
  /^S\?/R--/
  /--(.*)(.)$/$2--$1/
  /^R(.*)--/M$1/
  # Anything else errors out.
  /^S(.*)()/$
  /^S.*$/O$g/
  /^O(.*)$/|
  /^O(.*)$/=n=x=9/
/=1/*
  /=1//
.