[Gambas-user] JIT crash

Me adamnt42 at gmail.com
Mon Oct 8 15:35:42 CEST 2018


On Mon, 8 Oct 2018 09:22:59 +0200
Benoît Minisini <g4mba5 at gmail.com> wrote:

> Le 08/10/2018 à 08:58, Tobias Boege a écrit :
> > On Mon, 08 Oct 2018, Fabien Bodard wrote:
> >>
> >> Yes I'm agree...
> >>
> >> Benoit,
> >>
> >> Why not a syntactic sugar like
> >>
> >> PROPERTY MyProperty As String TO sVar
> >>
> >> ???
> > 
> > That one (or something close to it) has been proposed and "accepted" in the
> > bugtracker already [1]. It isn't implemented yet.
> > 
> > Regards,
> > Tobi
> > 
> > [1] https://lists.gambas-basic.org/pipermail/bugtracker/2018-July/000180.html
> > 
> 
> ...but all that is not related to the discussion with Jussi: whether 
> overriding public variables should be allowed or not. I think this is 
> useless, that they should not, and it will help the JIT compiler.
> 
> Regards,
> 
> -- 
> Benoît Minisini
> 
> ----[ Gambas mailing-list is hosted by https://www.hostsharing.net ]----

Forgive me for wading in on this, but

Public variables are a curse. They will come back and bite you when you least expect it.
There is no control. None. It's a bit like leaving your wallet on a bar thinking "Oh, no-one
will touch that."
Yes, having to declare a simple property that only exposes a state variable is so much of a 
pain. Oh, it takes an inordinate amount of keystrokes, probably about 20 or so. But, consider
the amount of effort that goes into finding the bit of code that someone else wrote that used 
a particular value of that variable "because it was handy".

Enough. Yes dont let them be overridden, better still ban the damn things in any class that has the
magic word "Export" in it.

Trust me on this. I know. Once upon a time I thought that an exposed boolean was safe. Ha! We 
had a young guy working for us that found a "magic" way to use specific negative values as flags 
with the obvious later disasters. 

The only thing that should ever be exposed unprotected is a constant. 
(I don't know whether it is possible to override a constant? And I'm not about to try. ....
AAAARRGH Override a constant with a public variable??? The mind boggles.)

Anyway. Sorry for butting in.

cheers
b

-- 
adamant42 at gmail.com


More information about the User mailing list