1scratch-pad about Tcl-BLOB activities, speculations, ideas, etc.
2inofficial file. official todo-list is part of 'man.tex'.
3~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4
5- uncut method ? -> unpack + cut of retrieved data
6
7
8
9pack/unpack with tcl-like syntax.
10
11*	structure definitions should be objects too,
12	to avoid multiple compilation-overhead.
13
14*	use internal separate interpreter to compile
15	structure definitions.
16	*	safer,
17	*	restricted to core and structure commands,
18	*	avoids cluttering of global namespace 
19
20*	types:
21	*	scalars
22		*	integer (short, long, int)
23		*	double
24		*	float
25		*	char
26
27	*	fixed arrays
28		n-times <type>
29
30	*	dynamic arrays
31
32	*	structures
33	*	union	(not required, can be done via seek's)
34
35*	movement:
36	*	seek (start, end, current)
37	*	align
38	*	mark position, seek to mark
39
40*	inquiries:	current location
41			type sizes
42
43
44definition usages:
45
46*	take data from array, keyed list, simple list (hierarchical)
47*	place data in array, keyed list, simple list  (hierarchical)
48
49
50
51
52
53
54- better:	tcl specific format syntax
55	->	formats compilable into special tcl-objects !!
56	->	use such formats in pack / unpack
57	->	format object inquirable about:
58
59			number of required bytes  (unpack)
60			number of generated bytes (pack)
61
62			number of generated values   (unpack)
63			number of required arguments (pack)
64
65		reengeneerable into tcl-code (ascii representation)
66
67=	format spec ?
68	contains:	basic types
69			location specs
70
71	possibilities:
72	*	type integrated
73	*	separate command(s) /seek ?
74
75	-	compilation done in separate interpreter!
76	  	(initialized as SAFE !)
77
78-- from BinarIO.README
79	set recfmt [list \
80		{string	2	id} \
81		{int	4	controlnum} \
82		{string 30	name} ]
83
84
85
86
87
88-- more manipulation:	shift/rotate byte/bit!
89			(useful in cryptography)
90
91\item	Implement additional commands to retrieve various type sizes,
92	i.e. short, int, long, float, double.
93