Author |
Topic: 'Line too long' error (Read 930 times) |
|
tsh73
Full Member
member is offline


Gender: 
Posts: 210
|
 |
Re: 'Line too long' error
« Reply #4 on: Jul 24th, 2016, 08:54am » |
|
Code:But I would be interested in other people's opinions. Do you write code with very long lines (including DATA statements), and if so why?
Was it actually code written by a person? I've seen program that puts other files into huge DATA lines. And reasons for it to be huge is 1) nobody supposed to read that anyway 2) it works in JB/LB, so why bother splitting strings.
|
|
Logged
|
|
|
|
Richard Russell
Administrator
member is offline


Posts: 1348
|
 |
Re: 'Line too long' error
« Reply #5 on: Jul 24th, 2016, 09:35am » |
|
on Jul 24th, 2016, 08:54am, tsh73 wrote:| Was it actually code written by a person? |
|
Good question: I don't know.
Quote:| it works in JB/LB, so why bother splitting strings. |
|
Why bother? Here are a few reasons:
Whether it appears to work is not the whole story, what matters is whether it's permitted by the LB docs. Do they state anywhere what the maximum length of a program line is?
A Liberty BASIC program is stored as a plain-text (.BAS) file, which you may want to manipulate - edit, print etc. - using other programs designed to work with plain text files. Many (for example Notepad) have a maximum line length.
Even if the DATA statements are not intended to be read by a human, the rest of the program presumably is. If you want a hardcopy version to browse, it's easier to print the entire program than just part of it.
Is there any guarantee that LB 5, in the unlikely event of it ever being released, will support very long lines?
The "precautionary principle": don't take unnecessary risks if they are easily avoidable. If the DATA statements are generated automatically, it's probably just as easy to make them a sensible length than ridiculously long. So rather than ask "why bother?" I'd want to ask "why not?".
Richard.
|
|
Logged
|
|
|
|
tsh73
Full Member
member is offline


Gender: 
Posts: 210
|
 |
Re: 'Line too long' error
« Reply #6 on: Jul 24th, 2016, 12:06pm » |
|
here's an example of program that churns out big data lines Small scribble editor It happened that splitting long lines was not so obvious as just start another DATA line. That's because then I started, problem of long lines never came to my mind.
It looks like it was last change in the program. So it was changed for purely cosmetic reasons.
|
|
Logged
|
|
|
|
Jack Kelly
Full Member
member is offline


Gender: 
Posts: 106
|
 |
Re: 'Line too long' error
« Reply #7 on: Jul 24th, 2016, 5:24pm » |
|
I too try to avoid long code lines that require the horizontal scroll bar. No problem using the underscore continuation character when necessary. I sometimes overlook the problem if the line is just a few characters too long, although I never print out the code.
This brings to mind a similar question I had recently. Is there any limit to the length of a string?
|
| « Last Edit: Jul 24th, 2016, 5:26pm by Jack Kelly » |
Logged
|
|
|
|
Richard Russell
Administrator
member is offline


Posts: 1348
|
 |
Re: 'Line too long' error
« Reply #8 on: Jul 24th, 2016, 8:14pm » |
|
on Jul 24th, 2016, 5:24pm, Jack Kelly wrote:| Is there any limit to the length of a string? |
|
In LBB strings are limited in length only by the amount of available memory (heap). It's hard to predict what the limit will be in practice because it depends on how much memory is being used by other objects (e.g. arrays) and how much is unavailable (e.g. string garbage).
You can use the LBB debugger to find the current heap usage, so subtracting that from the initial allocation (usually 500 Mbytes, unless reduced by an INI file setting) will give you a rough idea of the available memory.
Richard.
|
|
Logged
|
|
|
|
|