393 research outputs found

    Deduplicating and Ranking Solution Programs for Suggesting Reference Solutions

    Full text link
    Referring to solution programs written by other users is helpful for learners in programming education. However, current online judge systems just list all solution programs submitted by users for references, and the programs are sorted based on the submission date and time, execution time, or user rating, ignoring to what extent the programs can be helpful to be referenced. In addition, users struggle to refer to a variety of solution approaches since there are too many duplicated and near-duplicated programs. To motivate learners to refer to various solutions to learn better solution approaches, in this paper, we propose an approach to deduplicate and rank common solution programs in each programming problem. Inspired by the nature that the many-duplicated program adopts a more common approach and can be a general reference, we remove the near-duplicated solution programs and rank the unique programs based on the duplicate count. The experiments on the solution programs submitted to a real-world online judge system demonstrate that the number of programs is reduced by 60.20%, whereas the baseline only reduces by 29.59% after the deduplication, meaning that users only need to refer to 39.80% of programs on average. Furthermore, our analysis shows that top-10 ranked programs cover 29.95% of programs on average, indicating that users can grasp 29.95% of solution approaches by referring to only 10 programs. The proposed approach shows the potential of reducing the learners' burden of referring to too many solutions and motivating them to learn a variety of solution approaches.Comment: 7 pages, 5 figures, accepted to ASSE 202

    Composing control flow and formula rules for computing on grids

    Get PDF
    We define computation on grids as the composition, through pushout constructions, of control flows, carried across adjacency relations between grid cells, with formulas updating the value of some attribute. The approach is based on the identification of a subcategory of attributed typed graphs suitable to the definition of pushouts on grids, and is illustrated in the context of the Cyberfilm visual language

    Exploring Automated Code Evaluation Systems and Resources for Code Analysis: A Comprehensive Survey

    Full text link
    The automated code evaluation system (AES) is mainly designed to reliably assess user-submitted code. Due to their extensive range of applications and the accumulation of valuable resources, AESs are becoming increasingly popular. Research on the application of AES and their real-world resource exploration for diverse coding tasks is still lacking. In this study, we conducted a comprehensive survey on AESs and their resources. This survey explores the application areas of AESs, available resources, and resource utilization for coding tasks. AESs are categorized into programming contests, programming learning and education, recruitment, online compilers, and additional modules, depending on their application. We explore the available datasets and other resources of these systems for research, analysis, and coding tasks. Moreover, we provide an overview of machine learning-driven coding tasks, such as bug detection, code review, comprehension, refactoring, search, representation, and repair. These tasks are performed using real-life datasets. In addition, we briefly discuss the Aizu Online Judge platform as a real example of an AES from the perspectives of system design (hardware and software), operation (competition and education), and research. This is due to the scalability of the AOJ platform (programming education, competitions, and practice), open internal features (hardware and software), attention from the research community, open source data (e.g., solution codes and submission documents), and transparency. We also analyze the overall performance of this system and the perceived challenges over the years

    Program Repair with Minimal Edits Using CodeT5

    Full text link
    Programmers often struggle to identify and fix bugs in their programs. In recent years, many language models (LMs) have been proposed to fix erroneous programs and support error recovery. However, the LMs tend to generate solutions that differ from the original input programs. This leads to potential comprehension difficulties for users. In this paper, we propose an approach to suggest a correct program with minimal repair edits using CodeT5. We fine-tune a pre-trained CodeT5 on code pairs of wrong and correct programs and evaluate its performance with several baseline models. The experimental results show that the fine-tuned CodeT5 achieves a pass@100 of 91.95% and an average edit distance of the most similar correct program of 6.84, which indicates that at least one correct program can be suggested by generating 100 candidate programs. We demonstrate the effectiveness of LMs in suggesting program repair with minimal edits for solving introductory programming problems.Comment: 7 pages, 6 figures, accepted to iCAST 202

    Variation in Mitochondrial DNA of Vietnamese Pigs: Relationships with Asian Domestic Pigs and Ryukyu Wild Boars

    Get PDF
    Mitochondrial DNA (mtDNA) sequences (574 bp) of 30 Vietnamese pigs (large and small) were examined and compared with those of 61 haplotypes from wild boars and domestic pigs from various locations in Asia. The large Vietnamese pigs had genetic links to Ryukyu wild boars in southern Japan. The small Vietnamese pigs were closely related to other East Asian domestic pigs. These results indicate that Vietnamese pigs are genetically diverse and may be descendents of wild and domestic pigs from other regions of Asia

    Variation in mitochondrial DNA of Vietnamese pigs: Relationships with Asian domestic pigs and Ryukyu wild boars

    Get PDF
    Mitochondrial DNA (mtDNA) sequences (574 bp) of 30 Vietnamese pigs (large and small) were examined and compared with those of 61 haplotypes from wild boars and domestic pigs from various locations in Asia. The large Vietnamese pigs had genetic links to Ryukyu wild boars in southern Japan. The small Vietnamese pigs were closely related to other East Asian domestic pigs. These results indicate that Vietnamese pigs are genetically diverse and may be descendents of wild and domestic pigs from other regions of Asia

    The Local Origin of the Tibetan Pig and Additional Insights into the Origin of Asian Pigs

    Get PDF
    BACKGROUND: The domestic pig currently indigenous to the Tibetan highlands is supposed to have been introduced during a continuous period of colonization by the ancestors of modern Tibetans. However, there is no direct genetic evidence of either the local origin or exotic migration of the Tibetan pig. METHODS AND FINDINGS: We analyzed mtDNA hypervariable segment I (HVI) variation of 218 individuals from seven Tibetan pig populations and 1,737 reported mtDNA sequences from domestic pigs and wild boars across Asia. The Bayesian consensus tree revealed a main haplogroup M and twelve minor haplogroups, which suggested a large number of small scale in situ domestication episodes. In particular, haplogroups D1 and D6 represented two highly divergent lineages in the Tibetan highlands and Island Southeastern Asia, respectively. Network analysis of haplogroup M further revealed one main subhaplogroup M1 and two minor subhaplogroups M2 and M3. Intriguingly, M2 was mainly distributed in Southeastern Asia, suggesting for a local origin. Similar with haplogroup D6, M3 was mainly restricted in Island Southeastern Asia. This pattern suggested that Island Southeastern Asia, but not Southeastern Asia, might be the center of domestication of the so-called Pacific clade (M3 and D6 here) described in previous studies. Diversity gradient analysis of major subhaplogroup M1 suggested three local origins in Southeastern Asia, the middle and downstream regions of the Yangtze River, and the Tibetan highlands, respectively. CONCLUSIONS: We identified two new origin centers for domestic pigs in the Tibetan highlands and in the Island Southeastern Asian region
    corecore