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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,effb80d4bb7716dd,start X-Google-Attributes: gid103376,public From: "Alexy V Khrabrov" Subject: Wanted: Ada STL. Reward: Ada's Future Date: 1999/01/31 Message-ID: <790f4q$3l@bgtnsc01.worldnet.att.net>#1/1 X-Deja-AN: 438886487 Organization: AT&T WorldNet Services X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3 Newsgroups: comp.lang.ada Date: 1999-01-31T00:00:00+00:00 List-Id: Greetings -- I sent this message to several Ada gurus. So far, only Norman Cohen responded (thanks, Norm). Since the issue is the most important for the Ada's future, I publish it below and ask all active Ada programmers to follow up with pointers to their preferred Ada reusable components. SIGAda must form a working group to decide on an Ada Standard Library. -- Alexy V. Khrabrov, UPenn CIS Dept. -- To: Norman Cohen; Rober Dewar; Magnus Kempe; David Weller; Ben Brosgol; S. Tucker Taft; Michael Feldman Greetings -- I'm assembling a case for Ada for teaching at the University of Pennsylvania in Philadelphia. I compare Ada to Java, currently used here as the main vehicle for teaching various programming disciplines. Ben and Mike already provided helpful presentation support, and Tuck promised to share his theoretical and empirical knowledge of Ada versus Java in cross-implementation and action. Now, I'd like to ask all of you to evaluate the status of reusable software for Ada, and first and foremost, an analog of a standard library with basic data structures. The main reference point is C++ STL. I'm very concerned there's nothing near in Ada. And yet the main purpose of Ada is to facilitate software reuse! In a comparative assessment of programming languages, the state of existing reusable components is paramount. Yet for Ada, it's rather dreadful. Consider this simple task: a set. In C++, you get it from the STL. How do you get one in Ada? There seems to be no central library equivalent to STL. I looked at HBAP, and it turns out many links there are dangling -- to PAL for instance. There's a passage diminishing STL, yet there should be a clear guide how to find a complete replacement of all the necessary pieces of STL. All serious people program with C++ and STL. If they turn to Ada, a replacement to STL is like the first gulp of water they need for a break. I didn't do much industrial programming in Ada for a few years, and recently, when I started to put together a clean research system for KDD (data mining), looking around for the reusable components, I was terrified. I did found the Booch Components, fortunately picked up after David Weller gave them up, but they don't even have sets, for Pete's sake! Yet for anything simple, you need sets the first thing in the morning. I need them for clustering. Students need them for the beaten to death students/courses problem. Everybody needs sets. Where do you get them in Ada 95? The only thing raising hope I found is the EPFL ADTs, yet they were not modified after 1995, and mostly frozen after 1987. None of these libraries are ready to compile under ObjectAda and need tweaking on PCs. The make files are for Apex/Verdix, still in pre-GNAT era. Let's do something about it. First of all, can you guys please list THE reusable libraries YOU reuse the most? I will assemble a list on my server, and hope Magnus will update his -- dangerously and significantly outdated, dangling all over the place. ACT must put together a decent bundle looking like an STL. "The cell phone is only as good as the network it's on." Same for compilers and libraries. Can you please share your thoughts on the status of an Ada STL? (Let's code name it Ada STL for the purpose of discussion.) Is there anything close for Ada 95? What are YOU guys using for your Ada programming? I can't believe each of you has a jar with homegrown sets, linked lists, and queues, all implemented differently! OK, let's start small. Can you please tell me with as more URLs as possible, what exactly you use when you need 1. Linked lists 2. Trees 3. Queues 4. Sets I feel Sets are the litmus tests for an Ada STL. Where do you guys get sets? It's very important to assess the situation, and I hope to hear from you with as much detail as your busy schedules permit. Cheers, Alexy