Citation
Open-source software is citeable output of research and development efforts. Citing software recognizes the associated investment and the quality of the result. If you use open-source software, it is becoming standard practise to recognize the work as its authors have indicated below. In turn their effort might be awarded with renewed funding for drambiguity based on the evidence of your appreciation, and it may help their individual career perspectives.
This software can be cited directly as follows:
@software{jurgen_j_vinju_2023_8280198,
author = {Jurgen J. Vinju},
title = {Dr Ambiguity},
month = aug,
year = 2023,
publisher = {Zenodo},
version = {v0.1.2},
doi = {10.5281/zenodo.8280198},
url = {https://doi.org/10.5281/zenodo.8280198}
}
The diagnostics features are based on the following publication:
@inproceedings{sle3,
title = {Parse Forest Diagnostics with Dr. Ambiguity},
author = {Bas Basten and Jurgen Vinju},
booktitle = {International Conference on Software Language Engineering (SLE)},
year = 2011,
publisher = {Springer},
series = {LNCS},
}
Which automated the manual instructions found here:
@techreport{sdf2medkit,
author = "Jurgen J. Vinju",
title = "SDF Disambiguation Medkit for Programming Languages",
institution = "Centrum Wiskunde \& Informatica",
year = "2007"
}
The ambiguity detection algorithm -via random tree generation- is a port in Rascal of the method published by our colleagues in this paper:
@inproceedings{10.1007/978-3-319-02654-1_9,
author = {Vasudevan, Naveneetha and Tratt, Laurence},
booktitle = {Software Language Engineering},
editor = {Erwig, Martin and Paige, Richard F. and Van Wyk, Eric},
pages = {157--176},
publisher = {Springer International Publishing},
title = {Detecting Ambiguity in Programming Language Grammars},
year = {2013}
}