Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

SLA: Stepping Into the Electronic Library


SLA: Stepping Into the Electronic Library

One of the more popular suites of software-development tools is the GNU Project from the Free Software Foundation. At the heart of the project is the gcc GNU compiler, which supports not only C, but a number of other languages, including C++ and Chill. Still, the name remains the same because of common references, regardless of the language for which it happens to be used. A key feature of gcc is that creation of new languages is made easier by the separation of compiler back- and front-end tasks. The bulk of the compiler's work is done in the back end, where optimization and assembly generation is performed; the front end is used to parse and act correctly with the chosen language. Currently, a number of additional languages to be supported are undergoing final development, including Fortran, Pascal, and Ada.

First developed for the VAX and the Motorola 68020, gcc now supports over two dozen different chip architectures, on a wide range of operating systems shipped by a variety of vendors. The end result is a compiler that builds and operates in nearly every known setting. For example, gcc will work on over a dozen different operating systems that happen to be running on the Intel 386/486 processor.

Another feature of the GNU compiler is its ability to cross-compile for a target on a completely unrelated host. You can generate code for an Alpha from a 386, for the Hitachi H8/300 from a Sparc, or for a Mips system from one running DOS. The offerings of the build host are usually completely unrelated to the features provided by the designated target.

Consequently, gcc is often viewed as the only feasible choice to create software for an embedded target. Constructing a package on an RS/6000 that will work on the Sparclite is simply a matter of creative implementation of the software itself; no longer do you have to consider all of the limitations of your own environment.

Coupled with the compiler, the GNU assembler and linker play pivotal roles in the creation of the resulting program. Ported to do native and cross-platform development on a variety of systems, this trio provides you with a toolset which has a consistent style of usage across the many platforms. Likewise, the GNU debugger gdb lets you walk through generated code on the same collection of supported hosts that the other GNU tools boast. For some developers, the prospect of using free software carries with it a fear that when you encounter problems--the assembler dying with a segmentation fault seemingly out of the blue, for instance--you'll be out there on your own. (Incidentally, the term "free software" refers to the rights involved in redistribution of the tools, not to an implied or forced control over what cost is involved in taking advantage of them. Programmers are not required to give packages of the software away for free, although this is common. Rather, programmers are encouraged to make the software available in any way they can--but they may only charge for the physical media used to copy them, not their contents.) However, free software has proven to be at least as reliable as commercially available software; in addition, bug reports are generally acted upon in a much shorter period of time. Furthermore, the popularity of free software has led to the creation of com-

panies (like Cygnus Support) that provide commercial-quality support.

License restrictions and binary-only releases of development software add to the good reaction that many people have to trying free software. The source code for each tool is made available in the release(in the case of the professional support companies, prebuilt binary files are provided as a starting point). This way a user can add a new feature to the program without having to wait six months or longer to hear back from the commercial-software developer. As with bug reports, the required time for acting on such a request tends to be notably less than in similar situations for commercial software. However, the common case is that the offered binary package fulfills the bulk of a user's development needs.

When faced with the mission of finding the right development package, the quality of the choices should be included in the decision. Many will write off an option as not being worth the effort if its price is below an industry standard. When they realize that this is far from the final qualification for a good piece of software--indeed, it proves to be the least crucial aspect, given the industry's tendency to overcharge--the benefits of incorporating the vast selection of GNU tools become much more obvious.

While this year's annual meeting of the Special Library Association (SLA) in Atlanta gave the more than 5000 attendees the opportunity to kibitz about budget pressures, cost recovery, and the downsizing of their industry, the conference's real focus was on the continued evolution of the electronic library. From conference sessions to the exhibit floor, there's little doubt that rapid access to voluminous amounts of digital information is in every librarian's future.

The SLA is an international professional association of more than 14,000

information-resource experts, most employed by companies, government

agencies, academic institutions, and information-consulting firms--not exactly your father's branch librarian, in other words. As "special" librarians, they're being challenged more and more by the need to retrieve specialized information right now. Part of the solution to this challenge lies in the electronic dissemination of information, whether it be via the now-familiar CD-ROM, or over the Internet. Still, special librarians have been slower than their academic counterparts in their use of the Internet. This is quickly changing, as evidenced by the large crowds the Internet-related sessions drew at the SLA conference.

Underscoring this, an entire day of the conference was designated as "Internet Theme Day." Sessions included "Internet Nuts and Bolts," by Ronald Vasaturo of SURAnet; "Beyond the Basics: Applying Internet Resources," by Greg R. Notess of Montana State University; and "Electronic Journals: Publishing on the Internet," by Ann Okerson (Association of Research Libraries), Karen Hunter (Elsevier Science Publishers), and David Rogers (American Mathematics Society). Other sessions included "The Corporate Virtual Library: Model for the '90s," "The Next Wave of Text Retrieval," "The Perfect CD-ROM: A Dichotomy of Design," and "Computer Applications Roundtables."

A quick tour of the more than 200 vendors in the two exhibit halls revealed the mostly traditional lineup of online, CD-ROM, and printed products. There were, however, new exhibitors with products targeted for Internet users. AT&T demonstrated its experimental "RightPages" service, an electronic journal-distribution system developed by AT&T Bell Laboratories, Springer-Verlag, and the University of California at San Francisco. With RightPages, PC and workstations users can search, read, and print full-page images of articles--including graphics and photographs--from scientific journals published by Springer-Verlag. In addition to providing point-and-click access to journals, RightPages will alert users to newly published articles on subjects in which they have indicated an interest. Likewise, Ameritech's Notis Systems division showed its Windows-based Gopher client for Internet browsing, called "Win-

Gopher," which runs over several different TCP/IP stacks (at least those supplying a WINSOCK.DLL). WinGopher, which adds graphical extensions that make the menu-based Gopher easier to use, also supports Archie and Veronica searching protocols. With WinGopher, you can download sounds from the Internet and transfer images through the GIF viewer from the Internet to any Windows application.

To sum up, SLA remains the best gathering place for special librarians. But like all areas related to information search-and-retrieval, the world of the special librarian is rapidly feeling the effects of digital electronics.

A call for papers has been released for the Third Annual Object-Oriented Numerics Conference (OONSCI '95) to be held at Jackson Lake Lodge, Wyoming, on May 21--24, 1995. Examples of appropriate topics include experiences with object technology, use of nonprogramming language specific objects (for example, CORBA or Visual Basic controls), object-oriented languages and environments, object-oriented design, reusable software objects, and performance issues related to object-oriented programming. Application-domain-specific papers should focus on the object-oriented techniques used. Typical application domains of interest to OONSCI are image processing, computer graphics, CAD, PDE solvers, and engineering.

The annual OONSCI conference promotes the use of object technology for constructing numerical applications. OONSCI provides a forum for computer scientists and scientific programmers, in both academe and industry, to learn about issues related to object-oriented programming and to discuss their experiences. For more information, contact Margaret Chapman, program coordinator, at [email protected].

OONSCI '95

c/o Rogue Wave Software

P.O. Box 2328

Corvallis, OR 97339

503-754-3010


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.