Re: [Firebird-devel] Unnecessary expression evaluation?

2020-06-18 Thread Adriano dos Santos Fernandes
On 18/06/2020 14:07, Dimitry Sibiryakov wrote:
> 18.06.2020 18:02, Adriano dos Santos Fernandes wrote:
>> Can this evaluation of second argument when the first is NULL still be
>> necessary for any reason?
> 
>   As a minimum it can be a function with side effects.
> 

Interbase didn't even had internal functions at that time, so one
carrying this behavior were thinking in UDFs?

Side effects by side effects, the new read committed already break non
transactional things repeating whole transactions.


Adriano


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Ann Harrison


> On Jun 17, 2020, at 12:52 PM, Adriano dos Santos Fernandes 
>  wrote:
> 
> There were UDR examples I wrote with master/slave terms and I'll change
> them.

For what little it’s worth, this is not a new discussion.  When the VAX was 
being developed (1980) there was a move to eliminate violent and sexist 
terminology.  Programs were run, not executed, for example.  The 
extension,alas, remained .exe  
Cheers,

Ann 

Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Unnecessary expression evaluation?

2020-06-18 Thread Dimitry Sibiryakov

18.06.2020 18:02, Adriano dos Santos Fernandes wrote:

Can this evaluation of second argument when the first is NULL still be
necessary for any reason?


  As a minimum it can be a function with side effects.

--
  WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Odd difference for IN (..) and = ANY (..) in SELECT vs WHERE

2020-06-18 Thread Adriano dos Santos Fernandes
On 18/06/2020 02:10, Dmitry Yemanov wrote:
> 17.06.2020 21:34, Adriano dos Santos Fernandes wrote:
>>
>> So it's about this, correct?
>>
>> -- Uses two index segments
>> select registro_sec_roest from dp_registro_oest where registro_pri_roest
>> = 1 and registro_sec_roest = 1;
>>
>> -- Uses one index segment - more generalization of IN problem
>> select registro_sec_roest from dp_registro_oest where registro_pri_roest
>> = 1 and registro_sec_roest in (1, 2);
>>
>> -- Uses one index segment - IN problem
>> select registro_sec_roest from dp_registro_oest where registro_pri_roest
>> = 1 and (registro_sec_roest = 1 or registro_sec_roest is null);
>
> All cases use two segments. However, this:
>
Looks like an empty table causes different behavior for (n1 = 1 and (n2
= 2 or n2 = 3)) to ((n1 = 1 and n2 = 2) or (n1 = 1 and n2 = 3)).

I suppose something like a Conditional Bitmap may work, where T12 is
index on T (N1, N2):

select * from t where (n1 = 1 and (n2 = 1 or n2 is null)) or (n1 = 1 and
? is null)

Select Expression
    -> Filter
    -> Table "T" Access By ID
    -> ***Conditional*** Bitmap Or    // was Bitmap Or
    -> Bitmap Or
    -> Bitmap
    -> Index "T12" Range Scan (full match)
    -> Bitmap
    -> Index "T12" Range Scan (full match)
    -> Bitmap
    -> Index "T12" Range Scan (partial match: 1/2)


Adriano



Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Pavel Cisar




Dne 18. 06. 20 v 14:27 Mark Rotteveel napsal(a):


Depending on the context, other usable terms to replace master could be

     agency
     hive
     primary
     conductor
     captain
     schemer
     guide


Oh dear! Master is a "title" linked to top authority and professionalism 
in specific area (context) - like Master of ... Arts etc, it's not 
necessarily linked to power, or God forbid the slavery. Equivalent 
word/term/title exists in all languages. Hence using such term in any 
context to refer to top authority in given area is simple, clear, and 
easily translated to other languages (which is the primary reason why 
it's so popular).



And for slave:


"Slave" was an unfortunate choice as it has only one "hard" meaning in 
english. For non-native english speakers, it's natural to translate 
"slave" to word equivalent to "subordinate" in their native language, 
hence they mostly don't see it offensive as native english speakers, and 
for many the "slave" word may be pronounced more easily than 
"subordinate" or other replacement.


But this cleansing crusade has nothing to do with masters and slaves, 
neither with common good. It's just frustration of people weaponized 
and redirected to wrong target, as eradicating words from our vocabulary 
achieves nothing positive for our societies. It will only shift us 
toward '84 where Hate is Love, Peace is War etc. Slaves and slavery is 
deeply part of our lives, we are slaves of our habits, many work 
conditions are pure slavery, parents can enslave their children 
physically and emotionally etc. and eradicating the word will not change 
that. In fact, as human mind needs words and images to operate, loosing 
words can (over few generations) effectively cripple our capacity to 
think about affected topics, which in turn will limit our capacity to 
solve linked problems.


regards
Pavel


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Unnecessary expression evaluation?

2020-06-18 Thread Adriano dos Santos Fernandes
Hi!

Some expressions, for example arithmetic, concatenation evaluates the
second argument even when the first is NULL.

In ArithmeticNode there is this (old) comment:

    // Evaluate arguments.  If either is null, result is null, but in
    // any case, evaluate both, since some expressions may later depend
    // on mappings which are developed here

What are these "mappings"?

Can this evaluation of second argument when the first is NULL still be
necessary for any reason?


Adriano



Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Leyne, Sean



>90 years passed since the last book burning. Hardly can anyone remember so
> the new loop can start.

Actually.  Book burnings have been occurred much more recently.
https://en.wikipedia.org/wiki/List_of_book-burning_incidents

As recently, as 2013 in the US and 2019 in Poland.



Sean


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Dimitry Sibiryakov

18.06.2020 14:27, Mark Rotteveel wrote:

Depending on the context, other usable terms to replace master could be

     agency
     hive
     primary
     conductor
     captain
     schemer
     guide


  Well, I think after this censorship fb_get_primary_interface() routine can return 
pointer to ICaptain object. Broken backward compatibility should be an acceptable price 
for political correctness.


--
  WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Alex Peshkoff via Firebird-devel

On 2020-06-18 12:42, Dimitry Sibiryakov wrote:

18.06.2020 09:48, Pavel Cisar wrote:
If you would be raised in Europe (especially central or eastern) in 
last century (or another place ruled by One Truth Owners), you would 
not be so surprised.


  90 years passed since the last book burning. Hardly can anyone 
remember so the new loop can start.




Less. In USSR burning (well may be not always physical burning in fire 
but destroying books / magzines that becam unwanted from libraries) was 
quite popular.

Till 1988.





Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Mark Rotteveel

On 2020-06-18 14:02, Dimitry Sibiryakov wrote:

18.06.2020 13:59, Mark Rotteveel wrote:
So while a master is a specific type of owner, the term owner itself 
does not have the same meaning as master.


  So we can safety replace "master/slave" with "owner/owned", right?


In the case of replication, it would be better to use the commonly 
accepted terms primary/secondary or primary/replica.


Depending on the context, other usable terms to replace master could be

agency
hive
primary
conductor
captain
schemer
guide

And for slave:

operative
node
worker
replica
drone
handler
steward
emissary
doer
mason
coordinator
conscript

(from: 
https://www.theserverside.com/opinion/Master-slave-terminology-alternatives-you-can-use-right-now)



Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Dimitry Sibiryakov

18.06.2020 13:59, Mark Rotteveel wrote:
So while a master is a specific type of owner, the term owner itself does not have the 
same meaning as master.


  So we can safety replace "master/slave" with "owner/owned", right?

--
  WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Mark Rotteveel

On 2020-06-18 11:36, Dimitry Sibiryakov wrote:

18.06.2020 10:05, Mark Rotteveel wrote:

  BTW, when you start your search-and-replace work, don't forget to
find substitutions for "owner", "invalid", "dependency" and 
"creator".

First and third offend ex-slaves, second - disabled people, last -
religious ones.


I'm sorry, but that is just plain silly and trying to trivialize the 
problem.


  Sorry, it is out of my English again. What is the difference between
"master" and "owner"?


Owner means "a person who owns something : one who has the legal or 
rightful title to something", and this is a neutral term. While master 
(specifically in the master/slave context) is "an owner especially of a 
slave or animal", and this is about the absolute power-relationship that 
dehumanized other people (ie slaves), and literal control over life and 
death of other humans.


So while a master is a specific type of owner, the term owner itself 
does not have the same meaning as master.



Mark


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: ODP: Modern C++: constexpr

2020-06-18 Thread Dmitry Yemanov

18.06.2020 13:33, Dimitry Sibiryakov wrote:


18.06.2020 12:12, Karol Bieniaszewski wrote:

In my humble opinion this discussion is usless.


Yes. But someone has too much free time because of the pandemy and 
this someone want to command others to do a lot of pointless work. 


Given that our documentation do not use term "slave" in the replication 
context (and usage of "master" is also limited, I usually prefer 
"origin" over "master"), I fail to see "lot of pointless work" at all.



Dmitry


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: ODP: Modern C++: constexpr

2020-06-18 Thread Dimitry Sibiryakov

18.06.2020 12:12, Karol Bieniaszewski wrote:

In my humble opinion this discussion is usless.


  Yes. But someone has too much free time because of the pandemy and this someone want to 
command others to do a lot of pointless work. That's the problem.


--
  WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] ODP: ODP: Modern C++: constexpr

2020-06-18 Thread Karol Bieniaszewski
My English is bad so sorry if it have wrong maining.

In my humble opinion this discussion is usless.
E.g. rasism is against people. It have no corelation with software/hardware.
And there must be violence against people physical or mental. But this have not 
relations to maschines/software.
Master/slave is technical thing. It is in any electronic with magistral.

And think about. If i write white people i am rasist or only when i write black 
people? I suppose in non of this. There must be some violence against people.
In software there is not.

regards,
Karol Bieniaszewski
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Dimitry Sibiryakov

18.06.2020 11:46, Molnár Attila wrote:

owner : ownership is a legal term basicly. It gives the owner rights over the 
owned property.


  Yes and slaves is an usual example of such property.



master : master has actual power over the slave to command/control the slave.


  The actual power comes from the ownership. Otherwise it would be a simple employment or 
command chain (in army-like organizations).


--
  WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Molnár Attila
In my point of view (not a native english speaker)

owner : ownership is a legal term basicly. It gives the owner rights over the 
owned property. 
master : master has actual power over the slave to command/control the slave. 



-Eredeti üzenet-
Feladó: Dimitry Sibiryakov [mailto:s...@ibphoenix.com] 
Küldve: 2020. június 18., csütörtök 11:37
Címzett: For discussion among Firebird Developers 

Tárgy: Re: [Firebird-devel] ODP: Modern C++: constexpr

18.06.2020 10:05, Mark Rotteveel wrote:
>>   BTW, when you start your search-and-replace work, don't forget to
>> find substitutions for "owner", "invalid", "dependency" and "creator".
>> First and third offend ex-slaves, second - disabled people, last -
>> religious ones.
> 
> I'm sorry, but that is just plain silly and trying to trivialize the problem.

   Sorry, it is out of my English again. What is the difference between 
"master" and "owner"?

-- 
   WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel



__ Information from ESET Mail Security, version of virus signature 
database 21513 (20200618) __

The message was checked by ESET Mail Security.
http://www.eset.com




Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Dimitry Sibiryakov

18.06.2020 09:48, Pavel Cisar wrote:
If you would be raised in Europe (especially central or eastern) in last century (or 
another place ruled by One Truth Owners), you would not be so surprised.


  90 years passed since the last book burning. Hardly can anyone remember so the new loop 
can start.


--
  WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Dimitry Sibiryakov

18.06.2020 10:05, Mark Rotteveel wrote:

  BTW, when you start your search-and-replace work, don't forget to
find substitutions for "owner", "invalid", "dependency" and "creator".
First and third offend ex-slaves, second - disabled people, last -
religious ones.


I'm sorry, but that is just plain silly and trying to trivialize the problem.


  Sorry, it is out of my English again. What is the difference between "master" and 
"owner"?

--
  WBR, SD.


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Mark Rotteveel

On 2020-06-18 00:06, Dimitry Sibiryakov wrote:

18.06.2020 00:00, Leyne, Sean wrote:
"they" is also accepted as a singular, although it seems 
ungrammatical.


  Ok, thanks.

  BTW, when you start your search-and-replace work, don't forget to
find substitutions for "owner", "invalid", "dependency" and "creator".
First and third offend ex-slaves, second - disabled people, last -
religious ones.


I'm sorry, but that is just plain silly and trying to trivialize the 
problem.


Mark


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Mark Rotteveel

On 2020-06-17 22:07, Dimitry Sibiryakov wrote:

17.06.2020 21:55, Mark Rotteveel wrote:

the commonly accepted gender-neutral term is singular they.


  I don't know English well enough, sorry. What is singular for
"they"? "This"..?


Singular they is simply using "they" instead of he/she, "their" instead 
of his/her, and "them" instead of him/her. Some people think that 'they' 
is only third person plural, but that is not actually the case; see also 
https://en.wikipedia.org/wiki/Singular_they.


Mark


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ODP: Modern C++: constexpr

2020-06-18 Thread Pavel Cisar

Sean,

Dne 18. 06. 20 v 0:15 Leyne, Sean napsal(a):



18.06.2020 00:00, Leyne, Sean wrote:

"they" is also accepted as a singular, although it seems ungrammatical.


Ok, thanks.

BTW, when you start your search-and-replace work, don't forget to find
substitutions for "owner", "invalid", "dependency" and "creator". First and 
third
offend ex-slaves, second - disabled people, last - religious ones.


How does this type of BS comment help the discussion?

It only shows that you don't care about what others think about you or the 
project!

If you don't care about the terms, then you can simply be quiet, let the people 
who do care, discuss and work on the changes.


You should understand that while certain terms may offend certain 
people, vigorous actions that are clear Overton Windows shifting the 
society toward one controlled by minority of One Truth Owners may offend 
certain people as well. If you would be raised in Europe (especially 
central or eastern) in last century (or another place ruled by One Truth 
Owners), you would not be so surprised.


You should also understand that changing terms is not the issue on 
itself. The problem is *why* we should do it. If the reason is primarily 
to follow others to keep their acceptance and not get eventually 
punished or excommunicated, then as classic wrote: "something is rotten 
in the state of Denmark".


So, if you want to change certain terms to more precise ones in sake of 
clarity, be my guest. But there shall be no place in open source for 
pushing agenda of particular group interests unrelated to product 
itself. Open source shall be for all without any discrimination over any 
topic (and "positive" discrimination is still discrimination).


best regards
Pavel


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel