An SKOS-Based Vocabulary on the Swift Programming Language

Domain ontologies about one or several programming languages have been created in various occasions, mostly in the context of Technology Enhanced Learning (TEL). Their benefits range from modeling learning outcomes, over organization and annotation of lea

  • PDF / 6,729,632 Bytes
  • 15 Pages / 439.37 x 666.142 pts Page_size
  • 11 Downloads / 191 Views

DOWNLOAD

REPORT


and Steffen Rothkugel

Department of Computer Science, University of Luxembourg, 2, avenue de l’Universit´e, 4365 Esch-sur-Alzette, Luxembourg {christian.grevisse,steffen.rothkugel}@uni.lu

Abstract. Domain ontologies about one or several programming languages have been created in various occasions, mostly in the context of Technology Enhanced Learning (TEL). Their benefits range from modeling learning outcomes, over organization and annotation of learning material, to providing scaffolding support in programming labs by integrating relevant learning resources. The Swift programming language, introduced in 2014, is currently gaining momentum in different fields of application. Both its powerful syntax as well as the provided type safety make it a good language for first-year computer science students. However, it has not yet been the subject of a domain ontology. In this paper, we present an SKOS-based vocabulary on the Swift programming language, aiming at enabling the benefits of previous research for this particular language. After reviewing existing ontologies on other programming languages, we present the modeling process of the Swift vocabulary, its integration into the LOD Cloud and list all of its resources available to the research community. Finally, we showcase how it is being used in different TEL tools.

Keywords: Swift

· Vocabulary · SKOS · E-Learning

Resource Type: Ontology/Vocabulary License: CC BY-SA 4.0 Permanent URL: http://purl.org/lu/uni/alma/swift

1

Introduction

Programming languages have been the subject of domain ontologies in several occasions. Such ontologies have typically covered both syntactic and semantic elements of one or several programming languages. The modeled domain knowledge was then used mostly in the context of Technology Enhanced Learning (TEL). The benefits have been manifold: modeling learning outcomes [16], creation of learning paths [8,13,16], semi-automatic annotation of learning resources [7,11,13], organization of learning objects (LOs) [14,19], scaffolding support in c Springer Nature Switzerland AG 2020  J. Z. Pan et al. (Eds.): ISWC 2020, LNCS 12507, pp. 244–258, 2020. https://doi.org/10.1007/978-3-030-62466-8_16

An SKOS-Based Vocabulary on the Swift Programming Language

245

programming labs [7,12,21], reusable knowledge beyond the boundaries of systems [11,14,16] as well as visual and linguistic [14,20] aids. As some approaches realize a mapping between the abstract syntax tree (AST) returned by a parser and the elements of their respective ontologies [4,11,13], it became possible to perform static code analysis through SPARQL queries [4] or even retrieve information on a piece of source code through natural language questions [9]. One of the more recent programming languages is Swift, which was only introduced in 2014. First a proprietary language, it became open source and can nowadays be used within Apple’s ecosystem, on Linux and even on Windows (using Windows Subsystem for Linux ). Often considered a niche language for iOS development, it can be used for serve