| 
  
    | 
 
  
  |  
    | 
    Papers are accepted in the form of a PDF file
 To view the PDF files, you will need Adobe Acrobat Reader
 
    
      |  |  | • Содержание выпуска •
 • Mathematical Foundations of Programming •
 • Software and Hardware for Distributed Systems and Supercomputers •
 • Artificial Intelligence, Intelligence Systems, Neural Networks •
 
    Mathematical Foundations of Programming
    Responsible for the Section: doctor of physico-mathematical Sciences
	Nikolay Nepeivoda 
        On the left: assigned number of the paper, submission date, the number 
		of A5 pages contained in the paper, and the reference to the full-text 
		PDF
        /r1/pdf.jpg) . 
      
      
        
          | Article # 
			1_2022 31 
			p. 
          /r2/pdf.jpg) PDF | 
          
          submitted on 28th
			Dec 2021 displayed on 
			website on
			19th 
			Feb     
			2022   Alexey V. 
			Goloveshkin , Stanislav S. MikhalkovichRobust algorithmic binding to arbitrary fragment of program code
 When solving a task, a programmer actively interacts with a 
			finite set of code fragments. The information about their locations 
			is important for quick navigation, for other developers, and as a 
			kind of documentation. Integrated development environments (IDEs) 
			provide tools for marking code fragments with labels, displaying 
			lists of labels, and using these labels for quick navigation. 
			However, they often lose the correspondence between the label and 
			the marked place when the code is edited, in particular when changes 
			are made outside the IDE.
 In previous works, the authors propose a tool to be integrated into 
			various IDEs for “binding” to large syntactic entities of a program 
			and building a markup that is robust to code editing. The 
			description of the marked element is built on the basis of the 
			abstract syntax tree (AST) of the program. Later it is used to 
			algorithmically search for the element in an edited code. The search 
			has a success rate from 99 to 100%.
 This article aims at robust algorithmic binding to an arbitrary 
			section of the code. For binding to a single-line code fragment, we 
			propose an extension of the model describing the marked fragment, 
			and an additional search algorithm. We also propose an algorithm for 
			embedding nodes corresponding to multi-line fragments in an AST. We 
			show that the correctness of the AST is not violated by these 
			embeddings. Bindings to randomly selected lines were made in the 
			code of three large C# projects. Manual check of these lines search 
			results in the edited code has confirmed that the bindings are 
			robust to code editing. (in 
			Russian).
 
 Key words: program markup, algorithmic binding to program 
			code, software development, abstract syntax tree, code similarity 
			measurement.
 |  
          | article citation | http://psta.psiras.ru/read/psta2022_1_3-33.pdf |  
          | 
			
			DOI
 | 
			
			
			https://doi.org/10.25209/2079-3316-2022-13-1-3-33 |  
          | Article # 
			2_2022 28 
			p. 
          /r2/pdf.jpg) PDF | 
          
          submitted on 28th
			Dec 2021 displayed on 
			website on
			19th 
			Feb     
			2022   Alexey V. 
			Goloveshkin , Stanislav S. MikhalkovichRobust algorithmic binding to arbitrary fragment of program code
 When solving a task, a programmer actively interacts with a 
			finite set of code fragments. The information about their locations 
			is important for quick navigation, for other developers, and as a 
			kind of documentation. Integrated development environments (IDEs) 
			provide tools for marking code fragments with labels, displaying 
			lists of labels, and using these labels for quick navigation. 
			However, they often lose the correspondence between the label and 
			the marked place when the code is edited, in particular when changes 
			are made outside the IDE.
 In previous works, the authors propose a tool to be integrated into 
			various IDEs for “binding” to large syntactic entities of a program 
			and building a markup that is robust to code editing. The 
			description of the marked element is built on the basis of the 
			abstract syntax tree (AST) of the program. Later it is used to 
			algorithmically search for the element in an edited code. The search 
			has a success rate from 99 to 100%.
 This article aims at robust algorithmic binding to an arbitrary 
			section of the code. For binding to a single-line code fragment, we 
			propose an extension of the model describing the marked fragment, 
			and an additional search algorithm. We also propose an algorithm for 
			embedding nodes corresponding to multi-line fragments in an AST. We 
			show that the correctness of the AST is not violated by these 
			embeddings. Bindings to randomly selected lines were made in the 
			code of three large C# projects. Manual check of these lines search 
			results in the edited code has confirmed that the bindings are 
			robust to code editing. (in 
			Russian).
 
 Key words: program markup, algorithmic binding to program 
			code, software development, abstract syntax tree, code similarity 
			measurement.
 |  
          | article citation | http://psta.psiras.ru/read/psta2022_1_35-62.pdf |  
          | 
			
			DOI
 | 
			
			
			https://doi.org/10.25209/2079-3316-2022-13-1-35-62 |  
    • Содержание выпуска •• Mathematical Foundations of Programming •
 • Software and Hardware for Distributed Systems and Supercomputers •
 • Artificial Intelligence, Intelligence Systems, Neural Networks •
 
      |