Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

XHarbour/Harbour status ?

929 views
Skip to first unread message

Patrice

unread,
Jan 12, 2016, 8:19:35 PM1/12/16
to
Hi all,
I have been away for some time and would like to know latest news.

XHarbour last commit on SF is 2 months old, repositiry is moved or
project is dying ?

Harbour seems to show more activity.

What do you recommend ?
Patrice

"Everything should be made as simple as possible, but no simpler." Albert Einstein

Mel Smith

unread,
Jan 13, 2016, 10:44:55 AM1/13/16
to
Ptrice said:
> XHarbour last commit on SF is 2 months old, repositiry is moved or
> project is dying ?
>
> Harbour seems to show more activity.
>
> What do you recommend ?

Hi Patrice:

I guess no recent bugs have been reported, xHarbour is stable, and
perhaps Luiz needs to rest for awhile :)

The Harbour fork is, as you say, very active ! Przemek is introducing
many significant changes, and the consequence is that bugs are inevitably
introduced, and are reported, and need to be fixed.

I watch every day, and also note that out xHB changes over the past year
have slowed down, and none have been introduced since last November.

But, if you have a problem with something in the current xHarbour build
(XHB10138), then post the problem details here, and very likely, Enrico or
Luiz will investigate.

-Mel Smith


dlzc

unread,
Jan 13, 2016, 10:52:02 AM1/13/16
to
Dear Patrice:

On Tuesday, January 12, 2016 at 6:19:35 PM UTC-7, Patrice wrote:
...
> I have been away for some time and would like to
> know latest news.

Good thing for a *newsgroup*, huh! ;-)

> XHarbour last commit on SF is 2 months old, repositiry
? is moved or project is dying ?

No idea about "repository" but whosaway posts notices when it gets updated. All of Clipper / xBase / (x)Harbour is dying, as it is not taught in school, so few new devotees are being trained. As noted in a recent linked article, programmers know-and-use a very few programming languages.

> Harbour seems to show more activity.
>
> What do you recommend ?

X# will eat us both alive (both Harbour and xHarbour) unless they totally screw that effort up, and it too will pass in time. Too many current languages being taught that are internet friendly, Windoze-centric and / or OS tranparent.

Harbour did a great thing when it did unicode conversion across the board, but I am afraid it was too late.

I'd look to replaceable GUI front ends, as the Next Big Thing. Ones that can be driven by non-compiled data structures. Assuming HTML is not sufficient on its own.

But who am I, anyway?

David A. Smith

Mel Smith

unread,
Jan 13, 2016, 12:05:32 PM1/13/16
to
David said:
>I'd look to replaceable GUI front ends, as the Next Big Thing. Ones that
>can be driven by non-compiled data structures. Assuming HTML is not
>sufficient on its own.

>But who am I, anyway?


David:

*You* are the greatest Oracle we have here, but I hope you are wrong
this time about the Harbour language dying !

It seems Python is now the *thing* ? But what has Python got that the
Harbour language is missing ?

And, if there is something essential missing in our Harbour language,
can those missing features be implemented by our experts here in Harbour ?

I stand ready to 'cheer them on' if they can -- and help in any way
possible with my limited knowledge.

-Mel




otto

unread,
Jan 13, 2016, 1:16:11 PM1/13/16
to
On Wed, 13 Jan 2016 07:52:01 -0800 (PST), dlzc <dl...@cox.net> wrote:

>X# will eat us both alive (both Harbour and xHarbour) unless they totally screw that effort up, and it too will pass in time.
>Too many current languages being taught that are internet friendly, Windoze-centric and / or OS tranparent.
>
I think for new programmer it's also difficult to understand why two (x)Harbour's compiler.
I spoke with some older clipper programmer. This separation of two environment was not easy for them.
Today no one of them are working any more with a xbase language!

Regards
Otto

Klas Engwall

unread,
Jan 13, 2016, 10:44:53 PM1/13/16
to
> The Harbour fork is, as you say, very active ! Przemek is introducing
> many significant changes, and the consequence is that bugs are inevitably
> introduced, and are reported, and need to be fixed.

So, are you saying that since a bug sometimes is introduced in the new
extensions, and it maybe persists for several hours before it is fixed,
because of that Harbour is buggy? You are funny, Mel :-)

It is of course true that when no new features are ever added, like in
the xHarbour case, the consequence is that inevitably no new bugs are
introduced either.

Regards,
Klas

--- news://freenews.netfront.net/ - complaints: ne...@netfront.net ---

danca (Daniele Campagna)

unread,
Jan 14, 2016, 6:34:33 AM1/14/16
to
Il 01/14/2016 04:44 AM, Klas Engwall ha scritto:
>> The Harbour fork is, as you say, very active ! Przemek is
>> introducing
>> many significant changes, and the consequence is that bugs are inevitably
>> introduced, and are reported, and need to be fixed.
>
> So, are you saying that since a bug sometimes is introduced in the new
> extensions, and it maybe persists for several hours before it is fixed,
> because of that Harbour is buggy? You are funny, Mel :-)
>
> It is of course true that when no new features are ever added, like in
> the xHarbour case, the consequence is that inevitably no new bugs are
> introduced either.
>
> Regards,
> Klas
>
Can I jump in to ask some explanations? To resume the story of
(x)Harbour as I have understood it:

Harbour was started by a couple of spanish programmers, A. Linares and
F. Pulpòn in 1999 as a free Clipper compatible compiler. The idea was to
be quite conservative toward Clipper.

The conservative approach caused some disagreement about the way the
compiler should have been further developed, so we had the xHarbour
fork, more opened to new language extensions. The developer's list still
reports P.Czerpak as part of the team, with Ron Pinkas and others
(notably L.Culik).

In 2009 V. Szakats and P. Czerpak become the main Harbour's
developers/maintainers.
So Czerpak left xHarbour and become part of the Harbour team.

After some years now we have another fork, Szakats has created his own
version (Harbour 3.4) while the official Harbour (3.2) now is maintained
essentially by Czerpak. The funny thing is that xHarbour now appears to
be the conservative fork, while Harbour is running wild to offer a ton
of new functions and extensions.
So Szakats left the official Harbour team, it appears. Why?

What is the reason behind this new fork? What developers are supposed to
do, use the 3 compilers? Choose one and stick with it? Why Szakats
decided to go his way and left the official Harbour? What is the reason
behind this new fork?
I was not able to find any answer googling around so maybe someone can
shed some lights. Klas? :-)

Dan
--
"Everybody should pay taxes with a smile"
I tried, but they want money.

Mel Smith

unread,
Jan 14, 2016, 11:13:21 AM1/14/16
to
Klas said:
> So, are you saying that since a bug sometimes is introduced in the new
> extensions, and it maybe persists for several hours before it is fixed,
> because of that Harbour is buggy? You are funny, Mel :-)

No, I am just saying that an abundance of new features usually result in
bugs which inevitably results in more activity. No More, and No Less.

Also, I am very active in keeping up with changes n HB3.2 and HB3.4, and
have, over the past week or so, created builds for 3.2 up to two or three
times in one day. So, I'm busy too :)

>
> It is of course true that when no new features are ever added, like in the
> xHarbour case, the consequence is that inevitably no new bugs are
> introduced either.

Everyone needs a rest once in a while --- even Luiz and Przemek !

-Mel


Klas Engwall

unread,
Jan 14, 2016, 5:09:56 PM1/14/16
to
Hi Dan,

> Can I jump in to ask some explanations?

I suspect that some people will say that it is off topic here :-)

> To resume the story of (x)Harbour as I have understood it:
>
> Harbour was started by a couple of spanish programmers, A. Linares and
> F. Pulpòn in 1999 as a free Clipper compatible compiler. The idea was to
> be quite conservative toward Clipper.

If you read the Harbour changelog from the bottom up you will see that
there were many developers involved from the very beginning. Viktor was
one of them. Przemek entered in 2002. Ron, Patrick and Luiz were also
there from the beginning.

> The conservative approach caused some disagreement about the way the
> compiler should have been further developed, so we had the xHarbour
> fork, more opened to new language extensions. The developer's list still
> reports P.Czerpak as part of the team, with Ron Pinkas and others
> (notably L.Culik).
>
> In 2009 V. Szakats and P. Czerpak become the main Harbour's
> developers/maintainers.
> So Czerpak left xHarbour and become part of the Harbour team.

Przemek was very active in both projects at the same time. There is for
example one commit message from him in Harbours's changelog in early
2006 that is 623 lines long! That was when he, among many other things,
rewrote the entire GT system.

I believe Przemek dropped out of the xHarbour team a couple of years
earlier than you mentioned and instead brought his new ideas to Harbour,
where the reception was more favourable.

The original Harbour developers had dropped off one by one over the
years, but Viktor and Przemek stayed, and some time between 2006 and
2009 you can say that they became the main developers.

> After some years now we have another fork, Szakats has created his own
> version (Harbour 3.4) while the official Harbour (3.2) now is maintained
> essentially by Czerpak. The funny thing is that xHarbour now appears to
> be the conservative fork, while Harbour is running wild to offer a ton
> of new functions and extensions.

I don't know about "wild" :-) but there are indeed many new features.

> So Szakats left the official Harbour team, it appears. Why?
> What is the reason behind this new fork? What developers are supposed to
> do, use the 3 compilers? Choose one and stick with it?

The latter, I think. Evaluate the options, and the prospects of each of
them, and then settle for one. With different design philosophies
driving each project, I believe it will get increasingly more difficult
to switch back and forth between them as time goes by.

> Why Szakats
> decided to go his way and left the official Harbour? What is the reason
> behind this new fork?
> I was not able to find any answer googling around so maybe someone can
> shed some lights. Klas? :-)

There is a post in a thread in one of the Harbour newsgroups where he
explains it, but lacking distinctive words to feed the search engines it
is hard to find. The general explanation, as I remember it, was that he
was getting tired of all the responsibilities that he had taken upon
himself for so many years and that he wanted to get back to coding just
for having fun. And, I think he also wanted to experiment with things
that were difficult to implement in the official Harbour repository
considering that many existing users would be affected.

Forking per se is not a bad thing, and making it easy to fork is one of
the "selling points" behind Git. There exist several more or less
private Harbour forks on GitHub, created by people who mainly support
the official Harbour version but also want to try some different ideas
on the side. Using GitHub makes those forks easy to use for their
maintainers, and others can see them and discuss them. And as long as
the forks do not diverge too much, it is easy to port updates between them.

What makes Viktor's fork somewhat problematic is, apart from the naming
conflict, that given his high visibility and track record in the
newsgroups for so many years, users who download and try it go on and
discuss it in the Harbour-Users newsgroup. And that creates confusion,
especially among casual visitors to the newsgroup.

Klas Engwall

unread,
Jan 14, 2016, 5:23:16 PM1/14/16
to
Hi Mel,

>> So, are you saying that since a bug sometimes is introduced in the new
>> extensions, and it maybe persists for several hours before it is fixed,
>> because of that Harbour is buggy? You are funny, Mel :-)
>
> No, I am just saying that an abundance of new features usually result in
> bugs which inevitably results in more activity. No More, and No Less.
>
> Also, I am very active in keeping up with changes n HB3.2 and HB3.4, and
> have, over the past week or so, created builds for 3.2 up to two or three
> times in one day. So, I'm busy too :)

I think that you may be overdoing it a little. Those step-by-step
changes affect very few people, and the final resolution is just around
the corner. And it was mostly OS/2 related anyway, as I remember it ...

For regular users, waiting for the entire update sequence to finish is
probably enough.

>> It is of course true that when no new features are ever added, like in the
>> xHarbour case, the consequence is that inevitably no new bugs are
>> introduced either.
>
> Everyone needs a rest once in a while --- even Luiz and Przemek !

And Mel? How about him? :-)

Mel Smith

unread,
Jan 14, 2016, 5:55:52 PM1/14/16
to
Klas said:
> I think that you may be overdoing it a little. Those step-by-step changes
> affect very few people, and the final resolution is just around the
> corner. And it was mostly OS/2 related anyway, as I remember it ...
>
> For regular users, waiting for the entire update sequence to finish is
> probably enough.
>
>>> It is of course true that when no new features are ever added, like in
>>> the
>>> xHarbour case, the consequence is that inevitably no new bugs are
>>> introduced either.
>>
>> Everyone needs a rest once in a while --- even Luiz and Przemek !
>
> And Mel? How about him? :-)

Hi Klas:

Doing these updates (again, two this afternoon) keeps me busy, and out
of my wife's way :)

Thanks for your concern !

-Mel


Mel Smith

unread,
Jan 14, 2016, 6:06:55 PM1/14/16
to
Hi Klas:

Forgot to mention that Qatan from the Harbour Fork, sent me a couple of
tutorial documents for placement in whosaay.com:

They are two files for 'beginners' that wish to develop in Harbour. One
is in .CHM format, the other in .PDF format. Altho dated differently, they
apparently have the same content.

I placed them in the Harbour Fork section of whosaway because they are
slanted strongly toward Harbour 3.2 but may be useful for our xHarbour
developers to also examine.

Now, I'll rest for the remainder of the day :)

-Mel


Patrick Mast

unread,
Jan 15, 2016, 2:36:16 AM1/15/16
to
Good call Mel :-)

dlzc

unread,
Jan 15, 2016, 5:44:55 PM1/15/16
to
Dear Mel Smith:

On Wednesday, January 13, 2016 at 10:05:32 AM UTC-7, Mel Smith wrote:
> David said:
> > I'd look to replaceable GUI front ends, as the
> > Next Big Thing. Ones that can be driven by
> > non-compiled data structures. Assuming HTML is
> > not sufficient on its own.
>
> >But who am I, anyway?
>
> *You* are the greatest Oracle we have here,
> but I hope you are wrong this time about the
> Harbour language dying !

People still pop up on the Clipper newsgroup. But statistically, the volume has been decreasing there. As here. And being based on C, is losing us current advances, except maybe in the Linux camp.

> It seems Python is now the *thing* ? But
> what has Python got that the Harbour language
> is missing ?

That depends on the audience. Python is taught, but my kids (both programmers, one a computer scientist, that laugh at their Dad's quirky ways), neither use Python.

What is proprietary about any part of Python?

Can our SQL RDD be run in Harbour?

How many manuals can you find online (like Idiot's guides) for Python? How about (x)Harbour?

> And, if there is something essential missing
> in our Harbour language,

You mean besides documentation? Not necessarily free, but complete and available? Where is wvw or hwgui documented? What program examples and where can they be found?

> can those missing features be implemented by
> our experts here in Harbour ?
>
> I stand ready to 'cheer them on' if they can
> -- and help in any way possible with my limited
> knowledge.

The Visual Objects newsgroup is a slightly more active newsgroup than ours here, and still they talk about commercial packages (Vulcan, and more) as the doorway to the future.

Not to get biblical, but the Babel-stick has been waved, and the languages proliferate with each minute. And Micro$haft moving the goalposts with each OS iteration, pretty much tells you that the money, and interest, has moved on.

Another 3 day visit to the hospital. Sorry to be morose.

David A. Smith

Mel Smith

unread,
Jan 15, 2016, 6:36:51 PM1/15/16
to
David said:

< lots of discourging stuff snipped :( >

Hi David:

So, I guess what we need is more properly-aimed publicity for the
Harbour language.

And how do we do that with a well-aimed effort ??

Hope you, too, have some weapons to unsheath in your personal battle to
stabilize / improve your health.

-Mel


dlzc

unread,
Jan 15, 2016, 7:19:52 PM1/15/16
to
Dear Mel Smith:

On Friday, January 15, 2016 at 4:36:51 PM UTC-7, Mel Smith wrote:
> David said:
>
> < lots of discourging stuff snipped :( >
>
> So, I guess what we need is more properly-aimed
> publicity for the Harbour language.
>
> And how do we do that with a well-aimed effort ??

My forte is "names", not so much bringing zombies back to life. Does a loosely typed language make sense? Does a compiled language makes sense, when the competition is interpreted?

dBase was interpreted, and the macro was unique in that world.

Clipper arose when slow machines became blazing fast, and it permitted some measure of code and data security. It was accepted globally as an entry business methods control tool, did not involve massive programming teams.

Harbour was a miracle that compiled Clipper into C code, and allowed old business code to come back to life in non-DOS applications.

Along comes xHarbour, when the Harbour fork stagnated, and eXtended Harbour drew some talent, and improvements were made (SQLRDD and VxH at minimum).

Then xHarbour stagnated, with super-human efforts of a few good programmers, keeping it alive... and Harbour tooled up and dragged text strings into the 21st century, with an occasional "shill" sent into this newsgroup to stir things up and see if they can get more attention. (No Klas, not you.)

My suggestion stands, and I ran across a couple other "David Smiths" that feel that way too:
https://en.wikipedia.org/wiki/Croquet_Project
... lots more, just none of them me...

> Hope you, too, have some weapons to unsheath
> in your personal battle to stabilize / improve
> your health.

It is hitting the wallet that is the problem. I seem to be able to command the body, and adjust behavior to minimize the effect of failing organs, where I should NOT be doing that. I seem better able to manage a car's needs better than I manage this vessel I have a long-term loan on.

Time will tell if I can do that, before the final recall. I have a lot of Okie, and if tape and bailing wire isn't enough to get by...

David A. Smith

Mel Smith

unread,
Jan 15, 2016, 8:54:54 PM1/15/16
to
Hi David:

Speaking of money ....

My son's former brother-in-law (Dave Cheriton) is now Canada's 7th
richest person with 5 billion Cdn bucks !

However, divorces by Dave and my son Peter from the two Fraser sisters
left us miles away from the money. Dave's divorce settlement to Iris was
paltry in 1994.

btw, Dave was the co-financier of Google. He and one other guy each gave
Larry Page and Sergy Brin $100K to start up google. So, Dave now is worth 5
Billion of Canadian funny money.

another btw, Dave is the founder of many companies, the more recent of
which is www.optumsoft.com. They need highly trained software engineers.
Contact them at 844-361-8222 or in...@optumsoft.com. They're in Menlo Park,
California

Don't tell them I sent you :(

(Dave ruined my son's wedding, by wrapping and taping up the
wedding/honeymoon car so it was almost impossible to get moving. Dave was
and probably still is a brilliant anti-social asshole !)


Mel Smith

unread,
Jan 16, 2016, 12:11:52 PM1/16/16
to
Hi:

My previous post was wildly off-topic. I apologize !

As a post-post, the company I mentioned (Optumsoft) is bleeding money
(millions per year), getting almost NO revenue ($300K last year), and is not
worthy of your attention. It is suing Arista Networks (which was also
founded by Dave Cheriton) and which IS making oodles of money.

The legal actions involved are abour 'FORKING' software -- somthing we
all know about here.

--- end of OT stuff ---

My original daydream here was to perhaps encourage some successful
company to promote our Harbour language in tech colleges, universities, or
....

-Mel


danca (Daniele Campagna)

unread,
Jan 16, 2016, 12:23:28 PM1/16/16
to
Il 01/14/2016 11:09 PM, Klas Engwall ha scritto:
> Hi Dan,
...

>> So Szakats left the official Harbour team, it appears. Why?
>> What is the reason behind this new fork? What developers are supposed to
>> do, use the 3 compilers? Choose one and stick with it?
>
> The latter, I think. Evaluate the options, and the prospects of each of
> them, and then settle for one. With different design philosophies
> driving each project, I believe it will get increasingly more difficult
> to switch back and forth between them as time goes by.

Yes but it's hard to keep in sync with many flavours of the same thing,
and (for me at least) harder to deeply understand implications,
consequences, etc. In my opinion developers generally are better off
with ONE tool doing things, and ONE different flavour can be acceptable
- but, woah, now we have three.

>
>> Why Szakats
>> decided to go his way and left the official Harbour? What is the reason
>> behind this new fork?
>> I was not able to find any answer googling around so maybe someone can
>> shed some lights. Klas? :-)
>
> There is a post in a thread in one of the Harbour newsgroups where he
> explains it, but lacking distinctive words to feed the search engines it
> is hard to find. The general explanation, as I remember it, was that he
> was getting tired of all the responsibilities that he had taken upon
> himself for so many years and that he wanted to get back to coding just
> for having fun. And, I think he also wanted to experiment with things
> that were difficult to implement in the official Harbour repository
> considering that many existing users would be affected.
>

Hum, this sounds like a sweetened version of some internal battle. IIRC
Szakats states that his version has MANY bugfixes, so it seems more
logical to put the bugfixes in the main version, putting in the new fork
only new/different functions/options. It seems that he went away
slamming the door (or was forced to) and now goes his way. Who knows?

>
> What makes Viktor's fork somewhat problematic is, apart from the naming
> conflict, that given his high visibility and track record in the
> newsgroups for so many years, users who download and try it go on and
> discuss it in the Harbour-Users newsgroup. And that creates confusion,
> especially among casual visitors to the newsgroup.
>

And please note that we all more or less agree that the users base of
(x)Harbour is shrinking. So generating confusion and further divide is
probably a damage for old clipperheads (now harbourians) and
discouraging for newcomers IMHO.

I'll stick to xHb under Windows for old clipper programs revitalized
with gtwvw + hwgui, and to Hb under Linux for CGI programs.
For new Windows desktop programs I still am unsure what to do, I have
made something with fivewin+Harbour, something with hwgui+xHarbour and
gave a try to HMG. One thing is sure: I'll continue to learn, study,
experiment.
That's the programmer's life anyway, and I can live with it. :-)

Mel Smith

unread,
Jan 16, 2016, 1:01:04 PM1/16/16
to
Dan said:

>
> Hum, this sounds like a sweetened version of some internal battle. IIRC
> Szakats states that his version has MANY bugfixes, so it seems more
> logical to put the bugfixes in the main version, putting in the new fork
> only new/different functions/options. It seems that he went away slamming
> the door (or was forced to) and now goes his way. Who knows?

Hi Dan:

In Viktor's defense (and I don't think he really needs any defense from
me !), last week he posted two major upgrades/repairs to the HB3.2
repository.

So, he is still supporting HB3.2 and is apparently trying to minimize
the differences between HB3.2 and HB3.4 -- so the changelog suggests.

-Mel



danca (Daniele Campagna)

unread,
Jan 16, 2016, 1:21:02 PM1/16/16
to
Il 01/16/2016 07:00 PM, Mel Smith ha scritto:

> Hi Dan:
>
> In Viktor's defense (and I don't think he really needs any defense from
> me !), last week he posted two major upgrades/repairs to the HB3.2
> repository.
>
> So, he is still supporting HB3.2 and is apparently trying to minimize
> the differences between HB3.2 and HB3.4 -- so the changelog suggests.

Ahem! Maybe, aging, I'm becoming a bit paranoic... and I try to explain
simple things with complicated behind-the-scenes reasons... It's the
italian distrustful way... centuries of obscure plots and simple or no
explanations at all to people... :-)

Klas Engwall

unread,
Jan 16, 2016, 5:19:19 PM1/16/16
to
Hi Dan,

> Yes but it's hard to keep in sync with many flavours of the same thing,
> and (for me at least) harder to deeply understand implications,
> consequences, etc. In my opinion developers generally are better off
> with ONE tool doing things, and ONE different flavour can be acceptable
> - but, woah, now we have three.

So, what are you going to do about it? Try to merge them all into one?
Then, what happens after that? There will always be someone who wants to
make another fork. Are you going to merge all those future forks too? It
is impossible. You just have to live with it.

Isn't the point with forks that someone wants to make a better or more
interesting tool than whatever existed previously? And, as can be seen
in the (x)Harbour history, "better" is a moving target and subject to
opinion. When forks diverge in different directions, which is the ONE
tool that will make developers better off? Which design philosophy is
best? Objectively? Can you merge philosophies?

Make a list of the three (x)Harbour versions you were thinking of, add
the xharbour.com offerings and the more or less private additional
Harbour repositories on GitHub. I think there is also an yHarbour
project (stone dead) still on SourceForge. While you are at it, also add
the other Clipper derivatives out there. How many do you get? I remember
Massimo making wishes more than ten years ago for them all to merge. It
hasn't happened yet.

Whenever there is choice, those who are unable to choose will get into
trouble :-)

Enrico Maria Giordano

unread,
Jan 16, 2016, 5:35:46 PM1/16/16
to
My two cents:

I'm trying to stay Harbour-flavour-neutral (in the sense that I can
recompile my apps using Harbour or xHarbour) but it's very difficult
because Harbour is a moving earth and help from developers is almost
zero. :-(

EMG

--
EMAG Software Homepage: http://www.emagsoftware.it
The EMG Music page: http://www.emagsoftware.it/emgmusic
The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: http://www.emagsoftware.it/tbosg

dlzc

unread,
Jan 17, 2016, 1:58:24 PM1/17/16
to
Dear Mel Smith:

On Wednesday, January 13, 2016 at 10:05:32 AM UTC-7, Mel Smith wrote:
...
> It seems Python is now the *thing* ?
> But what has Python got that the Harbour
> language is missing ?

I asked my boys, and they use Java Script and C#. Free tools, and lots of community support, and programming examples. Also, accepted by their job sites.

David A. Smith

Klas Engwall

unread,
Jan 17, 2016, 3:04:27 PM1/17/16
to
Hi Enrico,

> My two cents:
>
> I'm trying to stay Harbour-flavour-neutral (in the sense that I can
> recompile my apps using Harbour or xHarbour) but it's very difficult
> because Harbour is a moving earth and help from developers is almost
> zero. :-(

When I search the Harbour newsgroups on Google Groups for your name I
get a list of four questions you have asked, all in 2010, and all
thoroughly answered. What is the zero help you have been getting?

Enrico Maria Giordano

unread,
Jan 17, 2016, 3:56:50 PM1/17/16
to


Il 17/01/2016 21:04, Klas Engwall ha scritto:

> When I search the Harbour newsgroups on Google Groups for your name I
> get a list of four questions you have asked, all in 2010, and all
> thoroughly answered. What is the zero help you have been getting?

I don't write my questions directly to the Harbour newsgroups. Usually
Antonio Linares writes them for me. And this is the tipical answer:

"In the future please verify such messages before posting here
or ask on harbour-user list for help."

https://groups.google.com/forum/#!topic/harbour-devel/DEFqWDk-jgQ

Klas Engwall

unread,
Jan 17, 2016, 5:22:14 PM1/17/16
to
Hi Enrico,

>> When I search the Harbour newsgroups on Google Groups for your name I
>> get a list of four questions you have asked, all in 2010, and all
>> thoroughly answered. What is the zero help you have been getting?
>
> I don't write my questions directly to the Harbour newsgroups. Usually
> Antonio Linares writes them for me. And this is the tipical answer:
>
> "In the future please verify such messages before posting here
> or ask on harbour-user list for help."
>
> https://groups.google.com/forum/#!topic/harbour-devel/DEFqWDk-jgQ

There are two newsgroups, one for support and one for discussing bugs,
feature requests etc. This was a user error, so it belongs in the
Harbour-User newsgroup. And Przemek explained exactly what the error
was. So what is you problem with the response? You got the help you
needed, didn't you?

Reporting bugs really requires a little more research than just shooting
from the hip.

BTW, why don't you ask your questions yourself in the Harbour-Users
newsgroup? I am sure there are many Harbour users who could have told
you that compiling a source module without the /n switch will generate a
function at the top with the same name as the prg file, and that when
using the /w3 switch variables declared but not used in that function
are reported as warnings. So correct your compiler switches and all will
be well.

This is what Clipper reports about your code snippet. The difference
between Clipper and Harbour is that Harbour explains it better:

L:\clip5\TEST>clipper enrico /w3
Clipper (R) 5.2e
Copyright (c) 1985-1995, Computer Associates International, Inc.
Microsoft C Floating Point Support Routines
Copyright (c) Microsoft Corp 1984-1987. All Rights Reserved.
305K available
Compiling ENRICO.PRG
ENRICO.PRG(6) Warning C1004 Ambiguous reference, assuming memvar: 'N'
ENRICO.PRG(8) Warning C1003 Ambiguous reference: 'N'
2 warnings
Code size 128, Symbols 96, Constants 0

Enrico Maria Giordano

unread,
Jan 17, 2016, 5:42:27 PM1/17/16
to


Il 17/01/2016 23:22, Klas Engwall ha scritto:

> There are two newsgroups, one for support and one for discussing bugs,
> feature requests etc. This was a user error,

No, this was a compiler bug introduced in the last build.

> BTW, why don't you ask your questions yourself in the Harbour-Users
> newsgroup?

Due to their attitude I left Harbour developers and I have no intention
to come back.

> I am sure there are many Harbour users who could have told
> you that compiling a source module without the /n switch will generate a
> function at the top with the same name as the prg file, and that when
> using the /w3 switch variables declared but not used in that function
> are reported as warnings. So correct your compiler switches and all will
> be well.

I reported a sample and the commands used to compile:

http://forums.fivetechsupport.com/viewtopic.php?f=3&t=31796&start=0

This is the sample:

STATIC n


FUNCTION MAIN()

n = 1

? n

RETURN NIL

and these are the commands:

Microsoft Windows [Versione 10.0.10586]
(c) 2015 Microsoft Corporation. Tutti i diritti sono riservati.

E:\HARBOUR>SET HARBOURCMD=/a /es2 /gc0 /m /n /q /w3

E:\HARBOUR>harbour test
Harbour 3.2.0dev (r1601050904)
Copyright (c) 1999-2015, http://harbour-project.org/
test.prg(4) Warning W0003 Variable 'N' declared but not used in
function 'TEST(1)'
test.prg(6) Warning W0001 Ambiguous reference 'N'
test.prg(8) Warning W0001 Ambiguous reference 'N'

No code generated.

Please note that it worked fine with xHarbour and with the previous
Harbour build.

Mel Smith

unread,
Jan 17, 2016, 6:29:06 PM1/17/16
to
David said:

>> It seems Python is now the *thing* ?
>> But what has Python got that the Harbour
>> language is missing ?
>
> I asked my boys, and they use Java Script and C#. Free tools, and lots of
> community support, and programming examples. Also, accepted by their job
> sites.


Hi David:

So, It seems that if you get kids young enough and bury them in *your*
computer language (whatever that may be), then later on, they tend to rebuke
other computer languages -- even though the others may be more suitable to
their needs.

I guess it like the imams in mosques: get kids early enough, and they
can be taught to believe anything :((

So, we have to get somebody in academia to introduce our harbour
language, and have it compete with others at that level. How can we do that
??

Can we offer advertising to the college/university/technical institute
that will use harbour ? Can we help them introduce it ?

Or what ???

We should not give up on our language. I visited the python.org site
the other day, and was disgusted with the negative notes that were presented
about their *own* language !

Have you asked your own boys to make a comparison. Perhaps *they* could
help ?

-Mel


danca (Daniele Campagna)

unread,
Jan 18, 2016, 8:59:03 AM1/18/16
to
Il 01/16/2016 11:19 PM, Klas Engwall ha scritto:
> Hi Dan,
>
>> Yes but it's hard to keep in sync with many flavours of the same thing,
>> and (for me at least) harder to deeply understand implications,
>> consequences, etc. In my opinion developers generally are better off
>> with ONE tool doing things, and ONE different flavour can be acceptable
>> - but, woah, now we have three.
>
> So, what are you going to do about it? Try to merge them all into one?

Who? Me? Why? :-)

> Then, what happens after that? There will always be someone who wants to
> make another fork. Are you going to merge all those future forks too? It
> is impossible. You just have to live with it.

I suppose I should read Viktor's changelog, trying to understand what
exactly he has done, then compare with the changelog of 3.2 official etc.
Time consuming.

>
> Isn't the point with forks that someone wants to make a better or more
> interesting tool than whatever existed previously? And, as can be seen
> in the (x)Harbour history, "better" is a moving target and subject to
> opinion. When forks diverge in different directions, which is the ONE
> tool that will make developers better off? Which design philosophy is
> best? Objectively? Can you merge philosophies?

A lot of questions, maybe a bit provocative, isn't it?
I'm not criticizing Viktor's fork nor the fact that forks exist. I'm
saying that I am a bit unhappy with the fragmentation of Harbour, and
the confusion arising from that. Problems I see are:

1) confusion for newcomers (if any) that will be puzzled by the
existence of Harbour official, xHarbour and Viktor's Harbour 3.4, and I
think that the very name "3.4" is ambiguous, it implies that this is the
more recent version, so that a new user probably would go for it,
thinking that 3.2 and 3.4 are the same thing, the latter simply more
recent/up-to-date. This is unfortunate, he could have called it vHarbour
maybe?
2) dispersion of efforts and work. Work made by core language
programmers and necessary work for end users (developers) to study and
understand the differences among various versions.

>
> Make a list of the three (x)Harbour versions you were thinking of, add
> the xharbour.com offerings and the more or less private additional
> Harbour repositories on GitHub. I think there is also an yHarbour
> project (stone dead) still on SourceForge. While you are at it, also add
> the other Clipper derivatives out there. How many do you get? I remember
> Massimo making wishes more than ten years ago for them all to merge. It
> hasn't happened yet.

I remember C3, Flagship and Alaska... On a sidenote: there is ONE
Flagship, not three flavours, and the same is for Alaska... When I have
choosen Harbour I didn't expect to end up with the necessity to choose
one of <n> different versions, but this is the side effect of Open
Source I suppose.

BTW I use Harbour under Linux and xHarbour under Windows, and try to
write code compatible with both if possible. At present I have no plans
to use Viktor's fork (essentially I have no time to deepen the knowledge
of it). It would be nice if someone would post a short explanation of
differences/improvements...

Rgds,

dlzc

unread,
Jan 18, 2016, 9:41:31 AM1/18/16
to
Dear Mel Smith:

On Sunday, January 17, 2016 at 4:29:06 PM UTC-7, Mel Smith wrote:
...
> Can we offer advertising to the college / university
> /technical institute that will use harbour ?

They typically have to publish or perish, so they generate entirely new languages.
https://golang.org/#
... or they punish / train students to use ASM, PHP, and various other flavors, so they get a feel for the evolution.

> Can we help them introduce it ? Or what ???

Have a better user interface class, IMO. Something like HTML and the flexibility, using a pre-installed browser, only with better data / code security.

...
> Have you asked your own boys to make a
> comparison. Perhaps *they* could help ?

Subject broached, but zero interest on their part. Programming is work, not fun, for them. Methods are fun, how to skin the animal, not necessarily the particular sharp knife employed.

They stand on different hills and see different horizons. Besides, hormones... you remember them...

David A. Smith

Mel Smith

unread,
Jan 18, 2016, 11:16:49 AM1/18/16
to
David said:

>> Have you asked your own boys to make a
>> comparison. Perhaps *they* could help ?
>
> Subject broached, but zero interest on their part. Programming is work,
> not fun, for them. Methods are fun, how to skin the animal, not
> necessarily the particular sharp knife employed.
>
> They stand on different hills and see different horizons. Besides,
> hormones... you remember them...

Yes, I remember: They tell me basically to 'bugger off' :(

Well, do we just sit back and watch our ship sink, or do we start doing
something about it ?

-Mel



dlzc

unread,
Jan 18, 2016, 1:51:19 PM1/18/16
to
Dear Mel Smith:

On Monday, January 18, 2016 at 9:16:49 AM UTC-7, Mel Smith wrote:
...
> Well, do we just sit back and watch our ship
> sink, or do we start doing something about it ?

That is a corporate (as in "the body") decision.

We have participated in maturing a simple bridge from Clipper 5.3 / DOS, to (x)Harbour / Windoze. We have participated in documenting some features of the language, by at least program examples. You have made packages available at a central repository, and have worked out link scripts for all sort of flavors of compilers.

What I think needs to be done, as I have said, is non-language specific objects, for user I/O. I find it inane to have fields of (essentially) set variable definitions, just to have a nice on-screen control. It should be simpler than that. VxH does have a nice presentation, but it follows the Micro$haft model (for obvious reasons, training is one) and I find that onerous. Sort of like an RDD, only for a single "record", a screenful of user data.

The ship has sunk my friend. We are constructing better rafts from bits of flotsam, and helping those we can that inherited some old code. But we may never see another shore.

David A. Smith

Mel Smith

unread,
Jan 18, 2016, 4:09:19 PM1/18/16
to
David said:

What I think needs to be done, as I have said, is non-language specific
objects, for user I/O. I find it inane to have fields of (essentially) set
variable definitions, just to have a nice on-screen control. It should be
simpler than that. VxH does have a nice presentation, but it follows the
Micro$haft model (for obvious reasons, training is one) and I find that
onerous. Sort of like an RDD, only for a single "record", a screenful of
user data.

The ship has sunk my friend. We are constructing better rafts from bits of
flotsam, and helping those we can that inherited some old code. But we may
never see another shore.


David:

I hope you're wrong.

I know that 'hope' has not much basis in fact, BUT accesses to my site
goes on night after night with maybe 5 to 10 accesses from *unknowns* daily.
Then, each day I get another one (maybe two) new registrants. I have 156
interested peolpe so far. There must be many more timid ones. We should help
them.

I have taken a small step this morning: I emailed the Semware
corporation and asked them if there was some way we could collaborate our
efforts: for them to sell more of their Semware Editors, and for us to
expand our Harbour language users. I hope they respond with something
positive.

I'm willing to promote their product on my site *IF* they provide
something 'free' (with no strings attached) to our harbour language user
registrants.

Perhaps Patrick Mast may also have some ideas ????

-Mel



dlzc

unread,
Jan 18, 2016, 7:22:22 PM1/18/16
to
Dear Mel Smith:

On Monday, January 18, 2016 at 2:09:19 PM UTC-7, Mel Smith wrote:
...
> I know that 'hope' has not much basis in fact,
> BUT accesses to my site goes on night after night
> with maybe 5 to 10 accesses from *unknowns* daily.

I have an unlisted website (family use only), and I get that many pings, people trying to log in dozens of times, simply because they cannot sell security tools if they do not show a threat.

> Then, each day I get another one (maybe two) new
> registrants. I have 156 interested peolpe so far.
> There must be many more timid ones. We should help
> them.

Having a better operator interface would be a huge help, especially if it was documented. I hate M$-isms, they clutter the code. Classes and inheritance might help clean things up, but I seriously doubt it.

I tried to offer my help in producing better documentation for the root, but my offer was not accepted. Not that I have ever written documentation for software before, but I did write GMPs for a gamma sterilizer long ago, so I know how to numb the mind...

David A. Smith

przemysla...@gmail.com

unread,
Jan 18, 2016, 10:20:04 PM1/18/16
to
W dniu niedziela, 17 stycznia 2016 23:42:27 UTC+1 użytkownik Enrico Maria Giordano napisał:

Hi Enrico,

> I reported a sample and the commands used to compile:
> http://forums.fivetechsupport.com/viewtopic.php?f=3&t=31796&start=0
> This is the sample:
>
> STATIC n
> FUNCTION MAIN()
> n = 1
> ? n
> RETURN NIL
> and these are the commands:
> Microsoft Windows [Versione 10.0.10586]
> (c) 2015 Microsoft Corporation. Tutti i diritti sono riservati.
>
> E:\HARBOUR>SET HARBOURCMD=/a /es2 /gc0 /m /n /q /w3
> E:\HARBOUR>harbour test

Unlike your previous messages this is complete self contain
example. So the problem you are reporting is HARBOURCMD envvar
interpretation by harbour compiler. Thank you very much for the
information. It will be fixed in few minutes. Most of Harbour
users switched to HBMK2 and .hbp files and few ones still using
raw harbour compiler binary haven't reported it so far though
problem has existed from February 2015 so I guess the do not
use HARBOURCMD functionality.

best regards,
Przemek

Enrico Maria Giordano

unread,
Jan 19, 2016, 5:49:02 AM1/19/16
to


Il 19/01/2016 04:20, przemysla...@gmail.com ha scritto:

>> I reported a sample and the commands used to compile:
>> http://forums.fivetechsupport.com/viewtopic.php?f=3&t=31796&start=0
>> This is the sample:
>>
>> STATIC n
>> FUNCTION MAIN()
>> n = 1
>> ? n
>> RETURN NIL
>> and these are the commands:
>> Microsoft Windows [Versione 10.0.10586]
>> (c) 2015 Microsoft Corporation. Tutti i diritti sono riservati.
>>
>> E:\HARBOUR>SET HARBOURCMD=/a /es2 /gc0 /m /n /q /w3
>> E:\HARBOUR>harbour test
>
> Unlike your previous messages this is complete self contain
> example.

There was a link with my sample (see above). You just had to click on
it. :-)

> So the problem you are reporting is HARBOURCMD envvar
> interpretation by harbour compiler. Thank you very much for the
> information. It will be fixed in few minutes.

Ok, I'm glad the problem has been clarified.

Mel Smith

unread,
Jan 19, 2016, 12:15:55 PM1/19/16
to
Enrico & Przemek said:

>> Unlike your previous messages this is complete self contain
>> example.
>
> There was a link with my sample (see above). You just had to click on it.
> :-)
>
>> So the problem you are reporting is HARBOURCMD envvar
>> interpretation by harbour compiler. Thank you very much for the
>> information. It will be fixed in few minutes.
>
> Ok, I'm glad the problem has been clarified.

Hi Enrico:

... and I've posted Przemek's fix to whosaway.com should you wish to
test it.

-Mel


Enrico Maria Giordano

unread,
Jan 19, 2016, 1:24:34 PM1/19/16
to


Il 19/01/2016 18:15, Mel Smith ha scritto:

> Hi Enrico:
>
> ... and I've posted Przemek's fix to whosaway.com should you wish to
> test it.

Thank you, but I only found the MinGW version. What about the BCC71
version? :-)

Mel Smith

unread,
Jan 19, 2016, 3:08:14 PM1/19/16
to
Enrico said:

> Thank you, but I only found the MinGW version. What about the BCC71
> version? :-)

Hi Enrico:

For the harbour fork, I only create the HB3.2 version under MinGW :((

Let me mull on this ...

Sorry :(

-Mel


Patrice

unread,
Jan 21, 2016, 8:40:33 PM1/21/16
to
Hi all,

Thanks for answers

On Wed, 13 Jan 2016 02:19:34 +0100, Patrice <fa...@home.fr> wrote:

>Hi all,
>I have been away for some time and would like to know latest news.
>
>XHarbour last commit on SF is 2 months old, repositiry is moved or
>project is dying ?
>
>Harbour seems to show more activity.
>
>What do you recommend ?
>Patrice
>
>"Everything should be made as simple as possible, but no simpler." Albert Einstein
Patrice

"Everything should be made as simple as possible, but no simpler." Albert Einstein

Mel Smith

unread,
Jan 21, 2016, 9:18:11 PM1/21/16
to
Enrico said:
> Thank you, but I only found the MinGW version. What about the BCC71
> version? :-)

Hi Enrico:

I have now posted a 'Borland-compiled' Harbour package for your use and
amusement :)

It is in the same 'fork' section that the MinGW version is placed -- but
underneath it.

Please let me know what is missing.

-Mel


Enrico Maria Giordano

unread,
Jan 22, 2016, 9:12:32 AM1/22/16
to


Il 22/01/2016 03:17, Mel Smith ha scritto:

> Hi Enrico:
>
> I have now posted a 'Borland-compiled' Harbour package for your use and
> amusement :)
>
> It is in the same 'fork' section that the MinGW version is placed -- but
> underneath it.
>
> Please let me know what is missing.

Thank you, I'm downloading...

In the meanwhile... what is the Borland version you used?

Mel Smith

unread,
Jan 22, 2016, 9:14:25 AM1/22/16
to
Enrico said:

> Thank you, I'm downloading...
>
> In the meanwhile... what is the Borland version you used?

My Favourite: BCC 7.1

-Mel


Enrico Maria Giordano

unread,
Jan 22, 2016, 9:19:06 AM1/22/16
to


Il 22/01/2016 15:14, Mel Smith ha scritto:

>> Thank you, I'm downloading...
>>
>> In the meanwhile... what is the Borland version you used?
>
> My Favourite: BCC 7.1

Ok! :-)

Enrico Maria Giordano

unread,
Jan 22, 2016, 9:23:09 AM1/22/16
to


Il 22/01/2016 03:17, Mel Smith ha scritto:

> Hi Enrico:
>
> I have now posted a 'Borland-compiled' Harbour package for your use and
> amusement :)
>
> It is in the same 'fork' section that the MinGW version is placed -- but
> underneath it.
>
> Please let me know what is missing.

Ok, it works. One of the problem has been fixed. But ^^ operator is
still not recognized... :-(

Mel Smith

unread,
Jan 22, 2016, 10:53:10 AM1/22/16
to
Enrico said:
> Ok, it works. One of the problem has been fixed. But ^^ operator is still
> not recognized... :-(

Hi Enrico:

What is the ^^ operator ?

I guess I've been out of touch. Can you help me please ?

-Mel


Enrico Maria Giordano

unread,
Jan 22, 2016, 11:40:01 AM1/22/16
to


Il 22/01/2016 16:52, Mel Smith ha scritto:

> What is the ^^ operator ?

Bitwise xor operator.

Mel Smith

unread,
Jan 22, 2016, 6:46:42 PM1/22/16
to
Enrico said:

> Bitwise xor operator.



Hi Enrico:

Mario Sabado (Harbour Users Group) told me a few minutes ago that those
bit operators had been implemented by separate functions so as not to screw
up their syntax :

e.g.,

<x> ^^ <y> should be written in Harbour as : HB_BITXOR(<x>,<y>)

The other similar functions are:

HB_BITAND(), HB_BITOR(), and HB_BITSHIFT(). Two versions for
bitshift - left and right : (<x>,<y>) and <x>,-<y>)

HTH,

-Mel Smith


Mel Smith

unread,
Jan 22, 2016, 9:10:54 PM1/22/16
to
Mel said:

> Mario Sabado (Harbour Users Group) told me a few minutes ago that those
> bit operators had been implemented by separate functions so as not to
> screw up their syntax :
>
> e.g.,
>
> <x> ^^ <y> should be written in Harbour as : HB_BITXOR(<x>,<y>)
>
> The other similar functions are:
>
> HB_BITAND(), HB_BITOR(), and HB_BITSHIFT(). Two versions for
> bitshift - left and right : (<x>,<y>) and <x>,-<y>)

Hi Enrico:

I tried using the HB_BITXOR() function in a small proggie. It compiled
but crashed on the 1st instance of trying to execute the HB_BITXOR()
function with a ' Bad Argument' error report

I notified the Harbour Users Group (Mario Sabado) about the crash, and
posted the short proggie there (see below).

Perhaps I misused the function or maybe the Hrbour XOR operation is
different that xHarbour's version, or maybe BCC7.1 handles it differently
??

Sorry,

-Mel


******* XOR Test Proggie ********
/* Test operation of ^^ operator for Enrico Maria Giordano
on Jan 22/2016
*/

function main()

local cEncrypted,cDecrypted
local cSentence,cPassword
CLS

// the xHarbour example way first
//cEncrypted := "Secure sentence" ^^ "Secret password"
//cDecrypted := cEncrypted ^^ "Secret Password" // works correctly

cSentence := "Secure Sentence"
cPassword := "Secret Password"

// Use Harbour functions instead

// Next statements *compile* but runtime crash occurs on next statement
cEncrypted := HB_BITXOR(cSentence,cPassword) // crash here - bad arg
cDecrypted := HB_BITXOR(cEncrypted,cPassword) // never get to here


?
? "cEncrypted is: " + cEncrypted
?
? "cDecrypted is: " + cDecrypted
?
? "Press a key to exit : "

inkey(0)

return nil
********* end of proggie *********


przemysla...@gmail.com

unread,
Jan 23, 2016, 2:46:01 AM1/23/16
to
Hi Mel,

hb_bit*() functions are intentionally designed for numeric
arguments only. They are fully optimized at compile time just
like other operators. If you want to make XOR operations on
string bytes then use hb_strXOR() function.

best regards,
Przemek

Enrico Maria Giordano

unread,
Jan 23, 2016, 5:23:08 AM1/23/16
to


Il 23/01/2016 00:46, Mel Smith ha scritto:

> Hi Enrico:
>
> Mario Sabado (Harbour Users Group) told me a few minutes ago that those
> bit operators had been implemented by separate functions so as not to screw
> up their syntax :
>
> e.g.,
>
> <x> ^^ <y> should be written in Harbour as : HB_BITXOR(<x>,<y>)
>
> The other similar functions are:
>
> HB_BITAND(), HB_BITOR(), and HB_BITSHIFT(). Two versions for
> bitshift - left and right : (<x>,<y>) and <x>,-<y>)

Ok. :-(

Enrico Maria Giordano

unread,
Jan 23, 2016, 5:24:10 AM1/23/16
to


Il 23/01/2016 03:10, Mel Smith ha scritto:

> Hi Enrico:
>
> I tried using the HB_BITXOR() function in a small proggie. It compiled
> but crashed on the 1st instance of trying to execute the HB_BITXOR()
> function with a ' Bad Argument' error report

:-(((

przemysla...@gmail.com

unread,
Jan 23, 2016, 6:41:18 AM1/23/16
to
Don't worry. It's an intentional feature with strict semantic
which allows to catch bugs in user code.
xHarbour implementation is not acceptable in production code,
i.e. do you know what is the result of:
? "A" ^^ "z"
For sure Harbour will never have such things in core code
anyhow if some xHarbour users finds it interesting then
I'll add XHB_BIT*() functions to xHarbour library in a while.

best regards,
Przemek

Enrico Maria Giordano

unread,
Jan 23, 2016, 8:10:04 AM1/23/16
to


Il 23/01/2016 12:41, przemysla...@gmail.com ha scritto:

> Don't worry. It's an intentional feature with strict semantic
> which allows to catch bugs in user code.
> xHarbour implementation is not acceptable in production code,
> i.e. do you know what is the result of:
> ? "A" ^^ "z"

No, never used that form.

> For sure Harbour will never have such things in core code
> anyhow if some xHarbour users finds it interesting then
> I'll add XHB_BIT*() functions to xHarbour library in a while.

Not for me. I just found that HB_BITXOR() is also available to xHarbour
so I'll switch to it. My purpose is to have one code for both compilers.

Mel Smith

unread,
Jan 23, 2016, 10:49:09 AM1/23/16
to
Hi Przemek and Enrico:

Just up and about, and noticed tht during the night (i.e., *my* night)
tht Przemek has provided a new update which includes:

XHB_BITXOR() !! Notice the 'X' in XHB :))

Thanks Przemek for the additional xharbour-compatible 'bit' functions.

Enrico:

I will be creating/testing and posting new Harbour builds (for MinGw and
BCC) later today.

I'll post here when they are ready for downloading.

-Mel



Mel Smith

unread,
Jan 23, 2016, 1:31:51 PM1/23/16
to
Hi Enrico and Przemek:

I have just posted new harbour builds (both BCC 7.1 and MnGW 5.1.0) on
the web site.

I have also checked out the XHB_XOR() function under both versions, and
it works correctly.

Thanks to Przemek for providing these new functions !

Enrico: Hope you get the same good results *I* got.

-Mel


Mel Smith

unread,
Jan 23, 2016, 3:07:37 PM1/23/16
to
Enrico:

Below is the test proggie for the XHB_BITXOR() function:

-Mel

***** proggie to text XHB_BITXOR() *****

/* Test operation of XHB_BITXOR() function for Enrico Maria Giordano
on Jan 23/2016 after new Harbour build 1601231259 for HB 3.2
*/

function main()

local cEncrypted,cDecrypted
local cSentence,cPassword
CLS

// the xHarbour example way first
//cEncrypted := "Secure sentence" ^^ "Secret password"
//cDecrypted := cEncrypted ^^ "Secret Password" // works correctly

cSentence := "Secure Sentence"
cPassword := "Secret Password"

// Now use the new Harbour XHB_BITXOR() function instead

cEncrypted := XHB_BITXOR(cSentence,cPassword)
cDecrypted := XHB_BITXOR(cEncrypted,cPassword)

?
? "cEncrypted is: " + cEncrypted
?
? "cDecrypted is: " + cDecrypted
?
? "Press a key to exit : "

inkey(0)

return nil
***** End of test proggie *****


neil

unread,
Jan 23, 2016, 5:37:38 PM1/23/16
to
Mel,

Could you clarify please. Przemek said in his posting "If you want to
make XOR operations on string bytes then use hb_strXOR() function.".

Is the new XHB_XOR function the equivalent of his hb_strXOR? Because
that seems to be the way you're using it in your test program.

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

Mel Smith

unread,
Jan 23, 2016, 7:18:30 PM1/23/16
to
Neil said:

> Could you clarify please. Przemek said in his posting "If you want to make
> XOR operations on string bytes then use hb_strXOR() function.".
>
> Is the new XHB_XOR function the equivalent of his hb_strXOR? Because that
> seems to be the way you're using it in your test program.

Hi Neil:

Yes, it appears the same, and gives correct results using the latest
harbour build under MinGW 5.1.0.

However, my question posted in the Harbour Users Group asked what the
harbour 'equivalent' of the xharbour '^^' operator was.

Mario Sabado posted a complete set of functions: HB_BIT*() that included
HB_BITXOR(x,y)

He did not post a reference to the HB_STRXOR() function.

Then, when I reported a crash, Przemek provided a new set of functions
named XHB_ BIT*() which included the 'XOR' version.

So, I guess Enrico could now use the new ones, or the singular
HB_STRXOR() function.

I haven't checked the use of HB_STRXOR() under BCC for Harbour, because
I wiped out BCC build when I built the latest MinGW version.

I'll give it a try on the next go-round.

Thanks for mentioning the older function. Enrico may not have remembered
it. I certainly never have :(

-Mel


Enrico Maria Giordano

unread,
Jan 24, 2016, 4:13:31 AM1/24/16
to


Il 24/01/2016 01:18, Mel Smith ha scritto:

> So, I guess Enrico could now use the new ones, or the singular
> HB_STRXOR() function.

As I've already written, I only need of HB_BITXOR().

dlzc

unread,
Jan 25, 2016, 10:48:06 AM1/25/16
to
To the Team:

On Sunday, January 24, 2016 at 2:13:31 AM UTC-7, Enrico Maria Giordano wrote:
> Il 24/01/2016 01:18, Mel Smith ha scritto:
>
> > So, I guess Enrico could now use the new
> > ones, or the singular HB_STRXOR() function.
>
> As I've already written, I only need of HB_BITXOR().

Just a reminder to the xHarbour crowd, that Harbour strings are now Universally unicode (???), and are no longer strings of single-byte integers. Hence the need to limit the range of acceptable input types to their XOR function.

I welcome corrections.

David A. Smith

dlzc

unread,
Jan 30, 2016, 2:17:19 PM1/30/16
to
Dear Mel Smith:
>
> On Wednesday, January 13, 2016 at 10:05:32 AM UTC-7, Mel Smith wrote:
> ...
> > It seems Python is now the *thing* ?
> > But what has Python got that the Harbour
> > language is missing ?
>
> I asked my boys, and they use Java Script and
> C#. Free tools, and lots of community support,
> and programming examples. Also, accepted by
> their job sites.

I have two friends that are professional programmers. One reports Java, and tools dedicated to PeopleSoft (much like VBA for M$ products). All his front ends are web pages, and all his server code is the above.

Haven't asked the other yet.

David A. Smith

Mel Smith

unread,
Jan 30, 2016, 9:24:30 PM1/30/16
to
Thanks David

-Mel


0 new messages