Hi all,

My apologies if already discussed.

I understand that labels are just a waste of place and time in a program (at least when it is fully debugged and frozen).

But when you edit a program, labels are helpful because you don't have to keep track of the lines inserted or removed to know how far you have to jump.

When you remove a label, if not on purpose, you can bet that a GTO or an WEQ will fail soon or late. If the label is not there, you have chances not notice.

It is just my opinion, but you can have guessed that I don't like the SKIP and BACK commands with relative jumps, because you have to do maths when the calc can display the useful result directly.

In the contest of removing the labels, I would have preferred a JUMP command with an absolute line number (with same range as BACK and SKIP). (or GTOL for a GTO Line programmable)

Even better, having 2 more commands:

the first one SHRINK, non programmable, would convert the current program with labels to the form without labels (at least the numerical ones from the HP41C point of view).

The second one EXPAND, non programmable, doing the reverse, aka reinserting the labels.

The EXPANDed form would be (need to renumber the lines):

001 LBL'PF'

002 INT?

003 x<1?

004 RTN

005 STO K

006 2

LBL 03

007 RCL Y

008 [sqrt]

009 IP

010 STO I

011 DROP

LBL 02

012 x>? I

013 GTO 00

014 [cmplx]ENTER

015 RMDR

016 x=0?

017 GTO 01

018 DROP

019 NEXTP

020 GTO 02

LBL 01

021 DROP

022 STOP

023 STO/ Y

024 GTO 03

025 DROP

LBL 00

026 STOP

027 CLSTK

028 x[<->] K

029 [times]

030 RTN

The SHRINKed form:

001 LBL'PF'

002 INT?

003 x<1?

004 RTN

005 STO K

006 2

007 RCL Y

008 [sqrt]

009 IP

010 STO I

011 DROP

012 x>? I

013 GTOL 25

014 [cmplx]ENTER

015 RMDR

016 x=0?

017 GTOL 21

018 DROP

019 NEXTP

020 GTOL 12

021 DROP

022 STOP

023 STO/ Y

024 GTOL 7

025 DROP

026 STOP

027 CLSTK

028 x[<->] K

029 [times]

030 RTN

Patrice