LB Booster
« LB Booster version 2.80 released »

Welcome Guest. Please Login or Register.
Oct 17th, 2017, 03:54am


Speed up Liberty BASIC programs by up to ten times!
Compile Liberty BASIC programs to compact, standalone executables!
Overcome many of Liberty BASIC's bugs and limitations!
LB Booster Resources
LB Booster documentation
LB Booster Home Page
LB Booster technical Wiki
Just BASIC forum
LB Umbrella forum
Liberty BASIC forum (the original)

« Previous Topic | Next Topic »
Pages: 1  Notify Send Topic Print
 thread  Author  Topic: LB Booster version 2.80 released  (Read 1977 times)
tsh73
Full Member
ImageImageImage


member is offline

Avatar




PM

Gender: Male
Posts: 197
xx Re: LB Booster version 2.80 released
« Reply #2 on: Dec 2nd, 2014, 07:03am »

Well, I found it weird and so I posted about it.
If you find it natural - post about it
(especially as why it's better).
User IP Logged

Richard Russell
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 1273
xx Re: LB Booster version 2.80 released
« Reply #3 on: Dec 2nd, 2014, 7:17pm »

on Dec 2nd, 2014, 07:03am, tsh73 wrote:
If you find it natural - post about it

Well, as I said, I find it "natural" because it's what BBC BASIC has always done (for the last 33 years!) so it's the behaviour I'm most familiar with.

As to whether it is "better", I expect that depends on the internal architecture of the interpreter. Considering that all boolean and bitwise operators (AND, OR, XOR, NOT) work only with integers, converting the components of a conditional expression to integers is surely reasonable.

That being the case it comes down to what is the best way of converting a floating-point value to an integer; in BBC BASIC truncation is the fastest and most straightforward way.

Richard.
« Last Edit: Dec 2nd, 2014, 10:18pm by Richard Russell » User IP Logged

Richard Russell
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 1273
xx Re: LB Booster version 2.80 released
« Reply #4 on: Dec 3rd, 2014, 01:47am »

on Dec 2nd, 2014, 07:03am, tsh73 wrote:
I found it weird

As a counter-argument I find this (from QBASIC/QuickBASIC) rather weird:

Code:
IF .5 THEN PRINT "True" ELSE PRINT "False"
IF .5 OR .5 THEN PRINT "True" ELSE PRINT "False" 

This prints "True" for the first statement and "False" for the second statement. It seems to me that if 0.5 is 'true' then 0.5 OR 0.5 (or for that matter 0.5 AND 0.5) ought to be true too, but it isn't.

Of course I understand why they are different, but it's an anomaly that is avoided by truncation to an integer. BBC BASIC, LBB 2.80 and LB 4.5 beta 3 all print "False" for both statements.

Richard.
User IP Logged

Richard Russell
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 1273
xx Re: LB Booster version 2.80 released
« Reply #5 on: Dec 27th, 2014, 09:39am »

For your interest, here is Virus Total's report on LBB v2.80. You can see that all 56 tests say that it is clean, and the digital signature is also verified.

It astonishes me that Just BASIC and Liberty BASIC are, it seems, still distributed as unsigned installers. sad

Richard.
User IP Logged

Rod
Junior Member
ImageImage


member is offline

Avatar




PM

Gender: Male
Posts: 88
xx Re: LB Booster version 2.80 released
« Reply #6 on: Dec 31st, 2014, 07:01am »

Perhaps you could assist Carl through this process and so benefit the whole community.
User IP Logged

Richard Russell
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 1273
xx Re: LB Booster version 2.80 released
« Reply #7 on: Dec 31st, 2014, 09:22am »

on Dec 31st, 2014, 07:01am, Rod wrote:
Perhaps you could assist Carl through this process and so benefit the whole community.

What kind of "assistance" do you think he requires? Signing an executable is a process which any developer of commercial software should be familiar with. It requires two components: a code-signing software tool (most people use Microsoft's signtool.exe, I think, which is available free) and a code-signing certificate (which must be paid for, but there are some bargains to be found if you shop around). You also need a 'permanently on' internet connection so that the signing tool can communicate with a timestamp server when required.

Some development tools and installer-creators can be configured to sign every generated executable automatically - heck even BBC BASIC for Windows can, which is how LBB gets signed! The installer I use - Inno Setup - also has that capability and I have it configured to sign every setup file.

Richard.
User IP Logged

Richard Russell
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 1273
xx Re: LB Booster version 2.80 released
« Reply #8 on: Jan 11th, 2015, 10:01am »

I was initially of the opinion that the 'opening the same RANDOM file twice' issue was insufficiently important to warrant a special release. However, as it could result in data loss, and since the fix is trivial, I have decided to update LBB to v2.82; it can be downloaded from the usual place:

http://lbbooster.com/LBB.exe (IDE/compiler)
http://lbbooster.com/LBBRUN.exe (optional runtime engine)

In this version, if you open the same file FOR RANDOM twice, or more times, (on different handles) all the opens will succeed, but only the first will open the file for update. The second and subsequent OPENs will open the file for input (read-only); attempting to PUT a record will result in an 'Access denied' error.

As a bonus feature, version 2.82 has the enhanced debugger with the heap and stack usage reported. This should be useful in diagnosing memory leaks.

Richard.
User IP Logged

Richard Russell
Administrator
ImageImageImageImageImage


member is offline

Avatar




Homepage PM


Posts: 1273
xx Re: LB Booster version 2.80 released
« Reply #9 on: Jan 19th, 2015, 4:53pm »

on Jan 11th, 2015, 10:01am, Richard Russell wrote:
As a bonus feature, version 2.82 has the enhanced debugger with the heap and stack usage reported.

It had slipped my mind, but executables created by LBB 2.82 also have a Windows 10 compatibility manifest (v2.80 EXEs only claim compatibility up to Windows 8.1). I am - like everybody else - assuming that Microsoft won't change the GUID when Windows 10 is officially released.

Of course there's a risk in claiming compatibility with an OS that doesn't yet formally exist, but development tools like LBB need to be 'ahead of the curve' so that people can test that their own executables work properly on the next version of Windows.

Richard.
User IP Logged

Pages: 1  Notify Send Topic Print
« Previous Topic | Next Topic »

Donate $6.99 for 50,000 Ad-Free Pageviews!


This forum powered for FREE by Conforums ©
Sign up for your own Free Message Board today!
Terms of Service | Privacy Policy | Conforums Support | Parental Controls