×

An approach to creating development environments for a wide class of programming languages. (English. Russian original) Zbl 1185.68139

Program. Comput. Softw. 34, No. 4, 225-236 (2008); translation from Programmirovanie 34, No. 4 (2008).
Summary: Creating an integrated development environment for a new programming language is a nontrivial and laborious task. Such universal integration platforms as Eclipse, NetBeans, MS Visual Studio, and others partly facilitate it. The paper gives a comparative analysis of the approaches to creating a development environment on the basis a universal integration platform and proposes a new approach that eliminates the disadvantages while retaining the advantages of the existing approaches.

MSC:

68N15 Theory of programming languages

Software:

UniTESK
PDFBibTeX XMLCite
Full Text: DOI

References:

[1] Johnson, B., Skibo, C., and Young, M., Inside Microsoft Visual Studio.NET, Redmond: Microsoft Press, 2003
[2] Gamma, E. and Beck, K., Contributing to Eclipse: Principles, Patterns, and Plug-ins, Boston: Addison-Wesley, 2005.
[3] Clayberg, E. and Rubel, D., Eclipse: Building Commercial-Quality Plug-ins, Upper Saddle River, NJ: Addison-Wesley, 2006.
[4] Boudreau, T., Tulach, Ja., and Wielenga, G., Rich Client Programming: Plugging into the NetBeans(TM) Platform, Sun Microsystems, 2007.
[5] Code Conventions for the Java Programming Language, http://java.sun.com/docs/codeconv/index.html .
[6] GNU Coding Standards, http://www.nu.org/prep/standards/ .
[7] Fowler, M., Beck, K, et al., Refactoring: Improving the Design of Existing Code, Reading, Mass.: Addison-Wesley, 1999.
[8] Soldatov, V.P., Make Build Autotools: Managing Software Projects, Binom, 2007.
[9] DBGP–A Common Debugger Protocol for Languages and Debugger UI Communications, http://xdebug.org/docs-dbgp.php .
[10] Abstract Syntax Tree, http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index. html .
[11] The Apache Velocity Project, http://velocity.apache.org .
[12] Free Marker Project, http://freemarker.org .
[13] Zuev, E.A., Evolution of Compilation Architecture, in Modern Information Technologies and Education, Sukhomlin, V.A., Ed., MAKS, 2005, pp. 322–331; http://www.cs.inf.ethz.ch/:_zueff/Publications/Compiler
[14] GNU Compiler Collection, http://gcc.gnu.org/ .
[15] McAffer, J. and Lemieux, J.-M., Eclipse Rich Client Platform: Designing, Coding, and Packaging Java Applications, Upper Saddle River, NJ: Addison-Wesley, 2005.
[16] MS Visual Studio Industry Partners, http://msdn2.microsoft.com/en-us/teamsystem/aa718821/aspx .
[17] Eclipse Java Development Tools Project, http://www.eclipse.org/jdt .
[18] Eclipse C/C++ Development Tools Project, http://www.eclipse.org/cdt .
[19] Laffra, C., Daly, C., Ho, E., Scharf, M., and Melvin, M., Language Toolkits, in EclipseCon, Burlingame, Calif., 2005; http://eclipsecon.org/2005/sessions.php .
[20] Eclipse Dynamic Language Toolkit Project, http://www.eclipse.org/dltk/ .
[21] Zuev, E.A., A Unified Semantic Representation of Programs as the Kernel of a Development and Analysis System, Vserossiiskay konferentsiya ”Teoreticheckie i prikladnye problemy informatsionnykh tekhnologii” (All-Russia Conf. on Theoretical and Applied Problems in Information Technologies), Moscow, 2001; http://www.cs.inf.ethz.ch/:_zueff/Publications/Article.pdf .
[22] MSDN: Native-Code Language Services with Babel, http://msdn2.microsoft.com/enus/library/bb165943
[23] Extensible Markup Language (XML). W3C Recommendations, http://www.w3.org/TR/REC-xml/ .
[24] Fomichev, A., Grinev, M., and Kuznetsov, S., A Native XML DBMS, Proc. of SOFSEM, 2006, pp. 272–281.
[25] XQuery from the Experts: A Guide to the W3C XML Query Language, Katz, H., Ed., Boston: Addison-Wesley, 2004.
[26] Introduction to SAFARI, http://domino.research.ibm.com/comm/research_projects.nsf/pages/safari.Introduction.html .
[27] Fuhrer, R.M., Charles, P., Sutton, S.M., Jr. and Laffra, C., SAFAR: A Meta-Tooling Platform for Creating Language-Specific IDEs, in EclipseCon, Santa Clara, Calif., 2007; http://www.eclipsecon.org/2007/index.php?page =sub/&id=3759 .
[28] Eclipse IDE Meta-Tooling Platform (IMP) Project, http://eclipse-imp.sourceforge.net/imp.html .
[29] UniTESK, http://www.unitesk.com . · Zbl 1064.68527
[30] Bourdonov, I., Kossatchev, A., Kuliamin, V., and Petrenko, A., UniTesK Test Suite Architecture, Proc. of FME 2002, Lect. Notes Comput. Sci., Springer, 2002, vol. 2391, pp. 77–88.
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.