comp.lang.ada
 help / color / mirror / Atom feed
* Ada needs Qt(5) bindings
@ 2013-07-09 18:17 Gour
  2013-07-09 20:00 ` Simon Wright
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Gour @ 2013-07-09 18:17 UTC (permalink / raw)


Hello!

I was evaluating Ada as implementation language for my open-source
project, but not having enoough time to go straight to the coding and
waiting for newer GNAT to arrive in Debian Sid, I spent few more months
looking for some possible alternatives and have arrived to the
conclusion that: Ada (seriously) needs Qt(5) bindings.

There is QtAda project (http://qtada.com/) which will hopefully release
bindings for Qt5. Moreover, there is Ada Studio 2013 - work done by
Leonid Dulman and, iirc, there used to be another Qt-Ada related
project.

However, it would be nice if the Ada community would get single Qt(5)
bindings, possibly with the support from Ada Core.

Haskell language which we evaluated in the past has "Haskell Qt Binding
Generator " GSOC project
(https://www.google-melange.com/gsoc/project/google/gsoc2013/ofan/44001).

My evaluation of OCaml also failed due to (labl)GTK-only bindings and
the GTK project is in a bad shape even on Linux pissing many
devs/projects with GTK3 which is actually becoming GNOME3.

Canonical is moving to Qt
(http://askubuntu.com/questions/281092/why-is-canonical-choosing-qt-over-gtk-for-unitys-next-generation),
serious projects like OpenShot video editor which recently finished
their kickstart campaign - pledged for $20,000 goal and got $45,028,
LXDE DE is moving away from GTK to Qt. Actually, I'm not aware and/or
heard about *any* project moving to GTK from Qt.

Another point is that during the panel discussion The Future of Qt
Recorded at the Qt Developer Days in Berlin in 2012, there was even
question that Qt becomes part of C++ standardisation process in the
future.
(http://qt-project.org/videos/watch/panel-discussion-the-future-of-qt)

Otoh, there is desire from many devs to move away from C++ to some more
safe language.

Unfortunately, there are several such languages, starting from D, then
Go, Rust (which attracty many devs), as well as some obscure ones like
Nimrod providing elegant syntax and compelling features, but all those
are tied to provide just C FFI and have no bindings for C++ GUI libs.

GTK team on Linux does not have many devs, while support for Windows
and Mac OS X is practically non-existant making Qt the only viable
choice for multi-platform GUI development which with the Qt5.1 release
extending the choice of platforms to mobile ones like iOS & Android.

My quest has also brought me to .NET/Mono where I tried languages like
Cobra (http://cobra-language.com/) - interesting language with clean
Pythonic syntax adding e.g. contracts to CLI.

Of course, I've also looked at F# which is very nice & powerful
language.

.NET/Mono has Qyoto - Qt bindings for .NET/Mono platform, but no Qt5
support for the foreseeable future -
http://article.gmane.org/gmane.comp.kde.devel.bindings/7853.

In Python world there are attempts to bring some static typing with the
projects like Nuitka (http://www.nuitka.net/pages/overview.html) and
mypy (http://www.mypy-lang.org/index.html), but it's certainly
questionable how much is Python in general suitable for medium-larger
projects where Ada simply shines. However, there are plenty of GUI
choices available for Python, Qt5 included.

Finally, I believe there is (some) truth in the words of Leonid Dulman
trying to explain the phenomena why is Ada not used more widely when
saying: "It seems to me, that the basic reason is an insufficient
environment and rather small numbers of IDE and packages, that expands
language possibilities."
(http://users1.jabry.com/adastudio/modernAdaProgramming.pdf)


One month ago I read interesting post entitled "Language Design Deal
Breakers"
(http://sebastiansylvan.com/2013/05/25/language-design-deal-breakers/)
with quite some comments @Reddit
(http://www.reddit.com/r/programming/comments/1f1uz3/sebastian_sylvans_language_design_deal_breakers/)
and the top one says: "It seems like Ada actually fits every single of
his criteria. I will not hold my breath while I'm waiting for him to
switch however.", so it's pity that such a fine language does not
attract more devs.

So, for my use case I'd like that Ada community put more support behind
Qt5 bindings 'cause performance of Ada is surely way better and more
pleasureable to use than .NET/Mono. 

As last resort, I'm curious what do you think about the possibility to
use PyQt for GUI part and calling Ada stuff from Python by using
Ada-Python Interfacing
(http://www.adacore.com/gnatpro/mixed-language/adapython/) ? 

I hope you'll understan my post in a positive manner trying to improve
usage of Ada in general...


Sincerely,
Gour

-- 
He is a perfect yogī who, by comparison to his own self, 
sees the true equality of all beings, in both their 
happiness and their distress, O Arjuna!

http://www.atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-09 18:17 Ada needs Qt(5) bindings Gour
@ 2013-07-09 20:00 ` Simon Wright
  2013-07-10  5:49   ` Gour
  2013-07-09 23:31 ` Nasser M. Abbasi
  2013-07-10 15:30 ` Dirk Heinrichs
  2 siblings, 1 reply; 10+ messages in thread
From: Simon Wright @ 2013-07-09 20:00 UTC (permalink / raw)


Gour <gour@atmarama.net> writes:

> As last resort, I'm curious what do you think about the possibility to
> use PyQt for GUI part and calling Ada stuff from Python by using
> Ada-Python Interfacing

This approach has always seemed a possibility to me. The problem I found
with the equivalent in Tcl/Tk was that there seemed to be no way of
making a callback from the Ada to the Tcl.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-09 18:17 Ada needs Qt(5) bindings Gour
  2013-07-09 20:00 ` Simon Wright
@ 2013-07-09 23:31 ` Nasser M. Abbasi
  2013-07-10  6:02   ` Gour
  2013-07-10 15:30 ` Dirk Heinrichs
  2 siblings, 1 reply; 10+ messages in thread
From: Nasser M. Abbasi @ 2013-07-09 23:31 UTC (permalink / raw)


On 7/9/2013 1:17 PM, Gour wrote:

>
> There is QtAda project (http://qtada.com/) which will hopefully release
> bindings for Qt5.

I wonder then why it says on

http://qt-project.org/wiki/Category:LanguageBindings

"QtAda is an Ada2005 language prividing bindings to the Qt libraries
and a set of useful tools. QtAda supports Qt version 4.6 and later."

I mean 5 is later from 4.6, right?

And on http://www.qtada.com/ it says: "QtAda supports Qt version 4.6 and later."


--Nasser



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-09 20:00 ` Simon Wright
@ 2013-07-10  5:49   ` Gour
  2013-07-10 12:50     ` Simon Wright
  0 siblings, 1 reply; 10+ messages in thread
From: Gour @ 2013-07-10  5:49 UTC (permalink / raw)


On Tue, 09 Jul 2013 21:00:48 +0100
Simon Wright <simon@pushface.org> wrote:

> This approach has always seemed a possibility to me. The problem I
> found with the equivalent in Tcl/Tk was that there seemed to be no
> way of making a callback from the Ada to the Tcl.

Maybe I wouldn't need callbacks, but still wonder how much would Python
spoil type-safety of the whole app?



Sincerely,
Gour

-- 
One who restrains the senses of action but whose mind dwells on 
sense objects certainly deludes himself and is called a pretender.

http://www.atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-09 23:31 ` Nasser M. Abbasi
@ 2013-07-10  6:02   ` Gour
  2013-07-10  6:46     ` Nasser M. Abbasi
  0 siblings, 1 reply; 10+ messages in thread
From: Gour @ 2013-07-10  6:02 UTC (permalink / raw)


On Tue, 09 Jul 2013 18:31:07 -0500
"Nasser M. Abbasi" <nma@12000.org> wrote:

> I wonder then why it says on
> 
> http://qt-project.org/wiki/Category:LanguageBindings
> 
> "QtAda is an Ada2005 language prividing bindings to the Qt libraries
> and a set of useful tools. QtAda supports Qt version 4.6 and later."
> 
> I mean 5 is later from 4.6, right?

Yeah, but it probably means < 5.0 'cause Qt5 is changing some things and
it's not backwards compatible.

Vadim Godunko wrote on Dec 27th 2012.: "It will be available in
beginning of next year.", so let's hope something will come out.

The problem is that the development for both Qt bindings project is not
very transparent (QtAda's links for mailing list are broken), so one
never knows what's going on and does not inspire confidence to embrace
Qt/QAda and that's why I'm saying that "Ada needs Qt bindings".


Sincerely,
Gour

-- 
Before giving up this present body, if one is able to tolerate 
the urges of the material senses and check the force of desire and 
anger, he is well situated and is happy in this world.

http://www.atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-10  6:02   ` Gour
@ 2013-07-10  6:46     ` Nasser M. Abbasi
  2013-07-10 10:06       ` Gour
  0 siblings, 1 reply; 10+ messages in thread
From: Nasser M. Abbasi @ 2013-07-10  6:46 UTC (permalink / raw)


On 7/10/2013 1:02 AM, Gour wrote:
>that's why I'm saying that "Ada needs Qt bindings".

Ada needs a major commercial sponsor.

Only hope is for Microsoft to add Visual Ada to Visual studio,
then you'll see all sorts of things added to Ada.  Or Apple
deciding to use Ada instead of objective-c for its mobile programming.

Or IBM deciding to use Ada instead of COBOL for its main-frame
business applications.

Or the defense dept re-instating its policy of using only
Ada for all defense software applications.

--Nasser




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-10  6:46     ` Nasser M. Abbasi
@ 2013-07-10 10:06       ` Gour
  0 siblings, 0 replies; 10+ messages in thread
From: Gour @ 2013-07-10 10:06 UTC (permalink / raw)


On Wed, 10 Jul 2013 01:46:27 -0500
"Nasser M. Abbasi" <nma@12000.org> wrote:

> Ada needs a major commercial sponsor.

It would be nice...

> Only hope is for Microsoft to add Visual Ada to Visual studio,
> then you'll see all sorts of things added to Ada.  Or Apple
> deciding to use Ada instead of objective-c for its mobile programming.
> 
> Or IBM deciding to use Ada instead of COBOL for its main-frame
> business applications.

...but is it realistic?

> Or the defense dept re-instating its policy of using only
> Ada for all defense software applications.

That seems to be even less likely.


Sincerely
Gour


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-10  5:49   ` Gour
@ 2013-07-10 12:50     ` Simon Wright
  0 siblings, 0 replies; 10+ messages in thread
From: Simon Wright @ 2013-07-10 12:50 UTC (permalink / raw)


Gour <gour@atmarama.net> writes:

> On Tue, 09 Jul 2013 21:00:48 +0100
> Simon Wright <simon@pushface.org> wrote:
>
>> This approach has always seemed a possibility to me. The problem I
>> found with the equivalent in Tcl/Tk was that there seemed to be no
>> way of making a callback from the Ada to the Tcl.
>
> Maybe I wouldn't need callbacks, but still wonder how much would
> Python spoil type-safety of the whole app?

You'd need to validate the passed values on entry to the Ada part, just
as with any external input. I expect the same would apply to QtAda.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-09 18:17 Ada needs Qt(5) bindings Gour
  2013-07-09 20:00 ` Simon Wright
  2013-07-09 23:31 ` Nasser M. Abbasi
@ 2013-07-10 15:30 ` Dirk Heinrichs
  2013-07-10 19:10   ` Gour
  2 siblings, 1 reply; 10+ messages in thread
From: Dirk Heinrichs @ 2013-07-10 15:30 UTC (permalink / raw)


Gour wrote:

> Ada (seriously) needs Qt(5) bindings.
> 
> There is QtAda project (http://qtada.com/) which will hopefully release
> bindings for Qt5. Moreover, there is Ada Studio 2013 - work done by
> Leonid Dulman and, iirc, there used to be another Qt-Ada related
> project.

As you mention Leonid: What about his QT5Ada work, announced here past 
April.

http://users1.jabry.com/adastudio/qtada/qt5/qt5ada.html

Bye...

	Dirk
-- 
Dirk Heinrichs <dirk.heinrichs@altum.de>
Tel: +49 (0)2471 209385 | Mobil: +49 (0)176 34473913
GPG Public Key C2E467BB | Jabber: dirk.heinrichs@altum.de

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Ada needs Qt(5) bindings
  2013-07-10 15:30 ` Dirk Heinrichs
@ 2013-07-10 19:10   ` Gour
  0 siblings, 0 replies; 10+ messages in thread
From: Gour @ 2013-07-10 19:10 UTC (permalink / raw)


On Wed, 10 Jul 2013 17:30:01 +0200
Dirk Heinrichs <dirk.heinrichs@altum.de> wrote:

> As you mention Leonid: What about his QT5Ada work, announced here
> past April.
> 
> http://users1.jabry.com/adastudio/qtada/qt5/qt5ada.html

I meant that when I wrote: "...there is Ada Studio 2013 - work done by
Leonid Dulman...", but the problem is that the project is not very
transparent, no public repo, no roadmap, no idea whether it's
one-man-show only etc.


Sincerely,
Gour

-- 
As the embodied soul continuously passes, in this body, 
from boyhood to youth to old age, the soul similarly passes 
into another body at death. A sober person is not bewildered 
by such a change.

http://www.atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2013-07-10 19:10 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-09 18:17 Ada needs Qt(5) bindings Gour
2013-07-09 20:00 ` Simon Wright
2013-07-10  5:49   ` Gour
2013-07-10 12:50     ` Simon Wright
2013-07-09 23:31 ` Nasser M. Abbasi
2013-07-10  6:02   ` Gour
2013-07-10  6:46     ` Nasser M. Abbasi
2013-07-10 10:06       ` Gour
2013-07-10 15:30 ` Dirk Heinrichs
2013-07-10 19:10   ` Gour

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox