From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,LOTS_OF_MONEY autolearn=unavailable autolearn_force=no version=3.4.4 Path: border1.nntp.dca3.giganews.com!border3.nntp.dca.giganews.com!border1.nntp.dca.giganews.com!nntp.giganews.com!usenet.blueworldhosting.com!feeder02.blueworldhosting.com!news.swapon.de!newsfeed.fsmpi.rwth-aachen.de!news.mixmin.net!aioe.org!newsfeed.CARNet.hr!news.metronet.hr!news1.t-com.hr!.POSTED!not-for-mail From: Gour Newsgroups: comp.lang.ada Subject: Ada needs Qt(5) bindings Date: Tue, 9 Jul 2013 20:17:38 +0200 Organization: T-Com Message-ID: <20130709201738.1609dce5@atmarama.noip.me> NNTP-Posting-Host: 93-139-181-41.adsl.net.t-com.hr Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ls237.t-com.hr 1373393877 11792 93.139.181.41 (9 Jul 2013 18:17:57 GMT) X-Complaints-To: abuse@t-com.hr NNTP-Posting-Date: Tue, 9 Jul 2013 18:17:57 +0000 (UTC) X-Newsreader: Claws Mail 3.9.1 (GTK+ 2.24.18; x86_64-pc-linux-gnu) X-Original-Bytes: 5791 Xref: number.nntp.dca.giganews.com comp.lang.ada:182388 Date: 2013-07-09T20:17:38+02:00 List-Id: 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-gt= k-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_lang= uage_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.=20 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/) ?=20 I hope you'll understan my post in a positive manner trying to improve usage of Ada in general... Sincerely, Gour --=20 He is a perfect yog=C4=AB who, by comparison to his own self,=20 sees the true equality of all beings, in both their=20 happiness and their distress, O Arjuna! http://www.atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810