調子に乗って勢いだけで書いてしまうとなんかどうでもよくなってくる説。続くと書いたからと言って続くとは限らない。まあ、そのうち書く。


というわけで軽く逃避。

# (readflag ; tmp; cur_read; out; cur_x; space; lf; cur_x_copy )

# initialize space = 0x20 lf = 0x0a
>
++++++++[>>>>++++<<<<-]
>>>>>++++++++++<<<<<

# '_' = 95 = (* 19 5)
# \ = 92 = (sub '_' 3)
# / = 47 = (sub '\' (45 = (* 5 9)))

<

+[
 >   # tmp

 >,< # cur_read tmp

 # C = 67 = (add (* 13 5) 2) cur = tmp


 +++++++++++++[>-----<-]>--<       # tmp
 +++++++++++++++++++[>>+++++<<-]   # out

 > # cur_read
 [
 # F = 70 = (add C 3)
  ---  # cur_read
  >--- # out
  >+   # (inc cur_x)
  <<   # cur_read

  [
   <   # tmp

   # R = 82 = (add 70 12)
   ++++[>---<-]
   +++++[>>---------<<-]  # out = '\'
   >>>--                  # (dec cur_x) * 2
   <<  # cur_read

   [
    <<->>>>>>>>>>>>>>>    # finish
   ]
  ]
 ]
 <<  # readflag or finish
 [
  # copy cur_x
  >>>> # cur_x
  [-<<<+>>>] # move cur_x to tmp
  <<< # tmp
  [->>>+>>>+<<<<<<] # mov tmp to cur_x and cur_x_copy

  >>>>>>[<<.>>-] # cur_x_copy

  <<<<.[-]  # disp and clear out
  >>>.    # lf
  <<<<<   # tmp
 ]
 < # readflag or finish
]
$ ./a.out a.bfi 
CCCCFFFRR
_
_
_
_
 \
  \
   \
  /
 /

簡単なところまではできたけど、こっからが大変そう。
まあいいや。このプログラムを完成させるのは君だ!bfの未来は君の腕にかかっているッ!


あとはPostScriptでAAじゃない折れ線グラフとかがあれば。