Dear List,
Christmas time is coming up and I think it is the right time for my
personal wish list.
I wish for two changes in GOBO. Both points have bothered not only me, but
many GOBO users I know. I have trained many students in the last few years
on how to use GOBO, and nearly everbody found the current situation
unusual.
(first the small one)
a) I wish that 'last_string' (of "input streams") is renamed to
'read_string_buffer' (or 'last_string_buffer') and a new 'last_string'
returns 'read_string_buffer.twin'. I have seen too many poor souls trip
over this one.
(now the big wish)
b) I wish that the 'put_*' implementations of dynamic data structure
really start behaving dynamically, even if they are implemented using
static containers. They should behave the same way that 'force_*' does.
The current behavior of 'put_*' is renamed ot 'brittle_put_*' or similar.
Both points are common pitfalls. The thing that everybody is always using
'force_*' instead of 'put_*', just to prevent problems, is ugly and feels
strange. It also makes changing back and forth between ISE and GOBO very
difficult.
None of the proposed changes should break existing code, as they always
replace a feature with a more permissive version. It might make some code
slower. But the alternatives are still there. With the name 'brittle_put',
it seems obvious that it has a stronger precondition than the regular
'put'. Other possible prefix suggestions for these features are 'frail_'
or just 'low_' (short and in the idea of 'low-level').
A good and not too stressful Advent season to everybody,
Bernd
--
Bernd Schoeller, PhD, CTO
Comerge AG, Technoparkstrasse 1, CH-8055 Zurich, www.comerge.net
|