The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Astro::ADS - An object orientated interface to NASA's ADS database


This module does nothing, and is here as a placeholder in case of need. The user interface to the goodness wrapped in the ADS package can be found in the Astro::ADS::Query module.


NOTE: The API for the ADS is changing and the current interface will disappear. This will be the final revision of this version of Astro::ADS. The new API (described at ) will be implemented as version 2.0 sometime in 2015.

$Id:,v 1.26 2014/06/15 bjd Exp $ $Id:,v 1.25 2013/08/06 bjd Exp $ $Id:,v 1.3 2004/01/28 09:04:42 aa Exp $


The Astro::ADS module itself has no methods, and is just a placeholder module, see Astro::ADS::Query for the actual interface.


Copyright (C) 2001-2003 University of Exeter. All Rights Reserved.

This program was written as part of the eSTAR project and is free software; you can redistribute it and/or modify it under the terms of the GNU Public License.


Alasdair Allan <>,


Followup queries using default URL

When an Astro::ADS::Query object has set the url to a non-default server, the Astro::ADS::Result::Paper objects it returns use the default URL in the references, citations, alsoread and tableofcontents methods. This is likely not what you want if you are doing a lot of followup queries.

You can re-use the original query with the followup method or use v1.21.0 or above which turns the URL from an object variable to a class variable.


Document issues with ADS mirrors, proxy() and $ENV{HTTP_PROXY}

Explain the preference to set the class variable using the ads_mirror() method in Astro::ADS::Query at the top of the script so that followup queries go to the expected place. *NB* Also note that the proxy() method is only affects one query object and the user agent looks at the environment variables HTTP_PROXY and NO_PROXY to the exclusion of almost all else. Once again, set $ENV{HTTP_PROXY} at the top of your script for least confusion.

Fix followup queries on alsoread and tableofcontents

Followups are new query objects, so there are issues with alsoread and tableofcontents. No one has noticed yet and I don't have time to fix it.

Tweak make to prompt for default ADS mirror

This is a "good" idea, but fiddly to implement. Prompt the user for one of the ADS mirrors during the installation and write it into Astro::ADS::Query to save setting it at the beginning of each script

Error 500: handle network failures gracefully.

Return undef instead of die()ing.