====== The Parseltongue Wiki ====== ParselTongue is a Python interface to classic AIPS, Obit and possibly other task-based data reduction packages. It serves as the software infrastructure for some of the ALBUS implementation. It allows you to run AIPS tasks, and access AIPS headers and extension tables from Python. There is also support for running Obit tasks and accessing data in FITS files. Full access to the visibilities in AIPS UV data is also available. ParselTongue allows you to script AIPS with a modern programming language, making complex automated data reduction possible. The excellent support for today's web standards in Python facilitates the development of pipelines that interact easily with the outside world. ===== Get ParselTongue ===== Grab the latest official ParselTongue release (version 3.0) [[http://www.jive.nl/parseltongue/releases/parseltongue-3.0.tar.gz|here!]] This release now supports Python 3. ParselTongue depends on Obit. A special version of Obit, adequate for ParselTongue and modified to be easier to build on most systems, can be found [[http://www.jive.nl/parseltongue/releases/Obit-27JUL20a.tar.gz|here.]] If you are using ParselTongue and would like to be kept up-to-date about new releases, you can subscribe yourself to the ParselTongue mailing list [[http://mailman.astron.nl/listinfo/parseltongue|here.]] ===== Installing ParselTongue ===== Installation instructions can be found in the Codex (see below). It does contain installation instructions for installing on Mac OS X using Fink or MacPorts as well as various popular Linux distributions. However, for Mac OS X users we now recommend using [[http://brew.sh|Homebrew]]. With Homebrew, installing ParselTongue becomes really easy: curl -LO http://www.jive.nl/parseltongue/releases/python3-obit.rb curl -LO http://www.jive.nl/parseltongue/releases/python3-parseltongue.rb brew install python3-obit.rb brew install python3-parseltongue.rb This will automatically install all the packages needed to build Obit and ParselTongue. This method works also works with Linuxbrew. ParselTongue packages are now available for Ubuntu. These packages can be installed using the following commands: sudo add-apt-repository ppa:kettenis-w/parseltongue sudo apt-get update sudo apt-get install python3-parseltongue This will automatically install all dependencies (including Obit). In principle packages for all currently supported versions of Ubuntu should be available. Obit packages are available for most major Linux distrubutions on the openSUSE build service. For example, to install packages for Fedora 31 you can run the following command: dnf install https://download.opensuse.org/repositories/home:/kettenis/Fedora_31/x86_64/python3-obit-27JUL20-18.1.x86_64.rpm And for OpenSUSE 15.2 you can run: zypper install https://download.opensuse.org/repositories/home:/kettenis/openSUSE_Leap_15.2/x86_64/python3-obit-27JUL20-lp152.18.1.x86_64.rpm This will automatically install all dependencies. After installation of Obit, you can build ParselTongue by following the installation instructions in the codex, running the configure script as: ./configure --with-obit=/usr/lib64/obit --prefix=... For an overview of the Linux distribution for which Obit packages have been built can be found at [[https://build.opensuse.org/package/show/home:kettenis/python3-obit]]. If packages for your favourite Linux distribution are not available, please send a message to Mark Kettenis . Another way to install ParselTongue is by using [[http://www.anaconda.com|Anaconda]]. To install Obit and ParselTongue in your default Anaconda environment you can simply run conda install -c kettenis parseltongue ===== Codex ParselTongue ===== The definitive tome for the installation and use of the Parseltongue framework, [[http://www.jive.nl/parseltongue/codex.html|found here]] ([[http://www.jive.nl/parseltongue/codex.pdf|pdf]]). ===== The ParselTongue Grimoire ===== ParselTongue is already used actively for VLBI data reduction. We have a number of examples and user-contributed snippets of Parseltongue that you may find useful, [[grimoire|assembled here]]. And please feel free to add your own incantations to the Grimoire! ===== ParselTongue Class Browser ===== A [[http://www.jive.nl/parseltongue/doc/index.html|useful way]] to explore the Classes that make up ParselTongue, and their interrelationships. ===== ParselTongue FAQ ===== A [[parseltongue_faq|FAQ]] to post questions regarding the use of ParselTongue ===== ParselTongue Mailing List ===== To receive announcements of new ParselTongue releases and other ParselTongue related news you can subscribe to the ParselTongue [[http://mailman.astron.nl/listinfo/parseltongue|mailing list]]. This list is low-volume. ===== ParselProblems ===== If you encounter problems with our software, please feel free to contact the developers ([[mailto:kettenis@jive.nl|Mark Kettenis]] and[[mailto:small@jive.nl|Des Small]]). We're also very interested in hearing about cool applications of ParselTongue. If things don't work as expected, or if you encounter any cryptic error messages, please yell. You can also politely ask for improvements ;-)