Computational Science Technical Note CSTN-166

CSTN Home

Fluent Interfaces and Domain-Specific Languages for Graph Generation and Network Analysis Calculations

K. A. Hawick

Archived: 2013

Abstract

Internal Domain-Specific Languages (DSL) provide an elegant mechanism to reduce the code complexity of complex systems simulations programming. Many complex systems problems manifest themselves as networks. Graph analysis techniques can be employed to count the number of: separate components; circuits; paths; or distances in the network. Several other properties such as: mean and peak degree; component or community size; adjacency eigen-spectra, and so forth can also be calculated. Calculation of these properties gives a signature that can help classify a network as belonging to a particular category with known behaviours. In practice however, importing applications data into graph analysis software and managing these calculations can be complex. Domain-specific language techniques allow a high-level graph calculations language to be developed that invokes software components in a graph manipulations framework. We describe a prototype graph generation and analysis domain-specific language built using fluent interface techniques and the Java programming language. We report on: attainable code complexity reduction, framework computational performance, and software engineering directions for internals DSLs for this sort of applications problem.

Keywords: domain-specific language; fluent interface; graph generation; graph computations; programming tools and languages

Full Document Text: PDF version.

Citation Information: BiBTeX database for CSTN Notes.

BiBTeX reference:

@INPROCEEDINGS{CSTN-166,
        author = {K. A. Hawick},
        title = {Fluent Interfaces and Domain-Specific Languages for Graph Generation
                and Network Analysis Calculations},
        booktitle = {Proc. Int. Conf. on Software Engineering (SE'13)},
        year = {2013},
        pages = {752-759},
        address = {Innsbruck, Austria},
        month = {11-13 February},
        publisher = {IASTED},
        institution = {Computer Science, Massey University},
        keywords = {domain-specific language; fluent interface; graph generation; graph
                computations; programming tools and languages},
        owner = {kahawick},
        timestamp = {2012.12.01}
}


[ CSTN Index | CSTN BiBTeX ]