Hex Artifact Content

Artifact 2f8edd1d0ff58816eef6d0eac3e8c12075d8b515:


0000: 23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20  #! /usr/bin/env 
0010: 74 63 6c 73 68 0a 0a 23 20 63 72 65 61 74 65 20  tclsh..# create 
0020: 66 61 6b 65 20 69 6e 74 65 72 70 20 77 69 74 68  fake interp with
0030: 20 22 69 66 22 20 64 65 66 69 6e 65 64 20 74 6f   "if" defined to
0040: 20 74 61 6b 65 20 62 6f 74 68 20 68 61 6c 76 65   take both halve
0050: 73 2c 20 22 70 61 63 6b 61 67 65 22 20 74 6f 20  s, "package" to 
0060: 64 65 74 65 72 6d 69 6e 65 20 73 74 75 66 66 2c  determine stuff,
0070: 20 61 6e 64 20 22 73 6f 75 72 63 65 22 2f 22 73   and "source"/"s
0080: 65 74 22 2f 22 70 72 6f 63 22 20 61 73 20 72 65  et"/"proc" as re
0090: 61 6c 20 2d 2d 20 61 6c 6c 20 6f 74 68 65 72 20  al -- all other 
00a0: 63 6f 6d 6d 61 6e 64 73 20 6e 6f 6f 70 73 0a 0a  commands noops..
00b0: 73 65 74 20 6b 65 65 70 20 7b 0a 09 73 6f 75 72  set keep {..sour
00c0: 63 65 0a 09 73 65 74 20 75 6e 73 65 74 0a 09 6e  ce..set unset..n
00d0: 61 6d 65 73 70 61 63 65 0a 09 70 72 6f 63 0a 09  amespace..proc..
00e0: 6c 69 73 74 0a 09 69 66 0a 7d 0a 0a 73 65 74 20  list..if.}..set 
00f0: 69 6e 74 65 72 70 20 5b 69 6e 74 65 72 70 20 63  interp [interp c
0100: 72 65 61 74 65 5d 0a 0a 24 69 6e 74 65 72 70 20  reate]..$interp 
0110: 65 76 61 6c 20 5b 6c 69 73 74 20 73 65 74 20 6b  eval [list set k
0120: 65 65 70 20 24 6b 65 65 70 5d 0a 24 69 6e 74 65  eep $keep].$inte
0130: 72 70 20 65 76 61 6c 20 7b 0a 09 6e 61 6d 65 73  rp eval {..names
0140: 70 61 63 65 20 65 76 61 6c 20 3a 3a 74 65 61 70  pace eval ::teap
0150: 61 72 74 79 20 7b 7d 0a 09 72 65 6e 61 6d 65 20  arty {}..rename 
0160: 69 66 20 3a 3a 74 65 61 70 61 72 74 79 3a 3a 69  if ::teaparty::i
0170: 66 0a 0a 09 70 72 6f 63 20 70 61 63 6b 61 67 65  f...proc package
0180: 20 61 72 67 73 20 7b 0a 09 7d 0a 0a 09 70 72 6f   args {..}...pro
0190: 63 20 69 66 20 61 72 67 73 20 7b 0a 09 7d 0a 7d  c if args {..}.}
01a0: 0a                                               .