I gave a presentation today about the technology we used to develop NYoSh. Here’s the Prezi. See also the associated  publication: Simi M, Campagne F. (2014) Composable languages for bioinformatics: the NYoSh experiment. PeerJ 2:e241 .


Our PeerJ manuscript submitted Nov26 is out with open peer reviews: Composable languages for bioinformatics: the NYoSh experiment See https://peerj.com/articles/241

Here’s hoping this paper quick starts the use of Language Workbenches in Bioinformatics. It’s a complete paradigm change for information management and real life software projects that need to handle several types of abstractions.

Yes, the manuscript was published in a little more than a month with Thanksgiving and Christmas in the range. I think this is the fastest peer-review I have experienced. Here’s a detailed timeline of this submission:

  • Nov 22 2013 Preprint Published  at PeerJ Preprint Server
  • Nov 25 2013 First Preprint Revision
  • Nov 26 2013 Manuscript Submitted to PeerJ for Peer Review  (two days before Thanksgiving)
  • Dec 9 2013 Editorial Decision Received
  • Dec 11 2013 Minor Revision Resubmitted
  • Dec 17 2013 Article is accepted for publication
  • Dec 21 2013 Proofs ready and sent to the authors
  • Dec 23 2013 Proofs corrected and returned to the journal
  • Jan 2 2014 Article is published online with Peer Review History.

We will definitely be submitting to PeerJ again.

We have released Goby 2.3.3. This is a release that improves  somatic variation  detection (i.e., you can now run somatic detection in a pure trio design, without matching germline samples for the patient), and fixes some bugs. See the detailed change log and download page.

We have posted a new tutorial to demonstrate how to write a GobyWeb Task plugin with NYoSh. See NYoSh Documentation for a complete list of tutorials.

Snapshot of task plugin in NYoSh workbench.

Snapshot of task plugin in NYoSh workbench.


We have released build 12 of the NYoSh EAP. See the ChangeLog and Download pages for details.


We have released build 11 of the NYoSh EAP and added a new feature documentation document (see Execute Commands in the below list).

See the ChangeLog and Download pages and the following documentation slides.


We have released build 8 of the NYoSh Early Access Preview. See the changelog for details and download page.

Below are notes from slides that describe some of these new features.{wpdm_category=nyosh-feature-documentation}

We have released build 4 of the NYoSh workbench. This version compiles and deploys plugin scripts directly into the GobyWeb plugin directory associated with the script. We have also started adding documentation. You can find a step by step Getting Started tutorial, as well as an introductory tutorial video.

NYoSh logo horizontal

Our lab started working on language engineering over the summer. Experimenting with the MPS language workbench, we built a set of languages that work together to provide a modern scripting language. We called this scripting language NYoSh, short for “Not Your ordinary Shell” (available at http://nyosh.campagnelab.org).

MPS makes it possible to package languages in a standalone Integrated Development Environment, so we built one for NYoSh. The NYoSh Workbench is the result and now available for download (Early Access Program). In this first release, we are focusing on GobyWeb plugin scripts. The workbench makes it possible to develop scripts for the GobyWeb resources and aligner plugins.

We will add documentation to the web site in the coming weeks and some videos to illustrate the advantages of developing plugins with NYoSh.

We have pushed version 2.2.1 of the GobyWeb plugins to GitHub. The following changes are included in this release:

  1. Fix VEP plugin for new version of Variant Effect Predictor (v72). Upgrade links for ensembl API distribution. Fetch and decompress ensembl-tools archive because VEP is now packaged in this file (would have been nice to see this listed as a change in the VEP/Ensembl API change log.
  2. ENSEMBL_ANNOTATIONS resource: Biomart.groovy script. Add filter by chromosome for new annotation kinds. This attribute forces download chromosome by chromosome, which is necessary with Biomart for large tables.
  3. ENSEMBL_ANNOTATIONS resource: Add pre-packed cache to speed up biomart annotation installs. The cached file is written and read from ~gobyweb/url-cache. Edit the plugin as needed to suit your particular local installation.
  4. Upgrade GOBYWEB_SERVER_SIDE/global_goby.jar to Goby 2.3.2 pre-release
  5. Expose BWA aln options in BWA_GOBY_ARTIFACT plugin.
  6. PLAST (parallel last) plugin: Extend PLAST to support paired end reads. New version of Goby that supports –paired argument in run-parallel.