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=-0.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, FREEMAIL_REPLY autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,9673880011dff8f7 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!news.maxwell.syr.edu!news.tele.dk!news.tele.dk!small.news.tele.dk!not-for-mail Sender: malo@0x53586c42.boanxx18.adsl-dhcp.tele.dk Newsgroups: comp.lang.ada Subject: Re: GNAT and Florist References: From: Mark Lorenzen Date: 10 Aug 2004 21:24:15 +0200 Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Organization: TDC Totalloesninger NNTP-Posting-Host: 83.88.108.66 X-Trace: 1092165703 dtext02.news.tele.dk 184 83.88.108.66:27349 X-Complaints-To: abuse@post.tele.dk Xref: g2news1.google.com comp.lang.ada:2656 Date: 2004-08-10T21:24:15+02:00 List-Id: fmdf@tiscali.it (fabio de francesco) writes: > Hello, > > I'm trying to learn Ada95 since a couple of months, coming from C/C++. > I must say that I find Ada much more powerful for writing code that > works without hours of debugging like in C/C++ and that it is much > more readable than the latters. > > I use GNAT compiler on Linux and I want to write an Ada program that > has to use the TCP/IP Socket API and maybe other POSIX API. > It's not clear to me which packages I have to use, because I have > heard of a library named Florist that would provide Sockets bindings ( > and othe POSIX bindings while I also found a package Ada.Sockets in > GNAT. > > My question is about when and why anyone should choose packages > provided by Florist instead than the ones by GNAT. > > Thank you all in advance, > > Fabio De Francesco. Florist is an implementation of the ISO/IEC standard 14519 and defines a binding the system calls and library functions defined by POSIX. The socket bindings in GNAT are good enough if you want to do socket programming, but they are not a complete binding to POSIX. If you want to use other POSIX functions such as shared memory, memoty locking, process signalling, select() system call, address resolver, read(), write(), readv(), writev() etc., then you should go for Florist. The ISO/IEC 14519 standard consists of nearly 900 pages, but it is very clear and informative. It is actually a much better source for learning POSIX than the usual C API. Regards, - Mark Lorenzen