217,157 research outputs found

    ZinjaI: an integrated development environment for a first programming course with C++

    Get PDF
    Most of the students in Argentinian universities tends to experience huge adaptation problem over their first year. It is the main cause for very high indexes of abandonment. In the case of computing/informatics systems careers, in the first programming course, the students must learn a series of concepts related to computing algorithms abstraction, programming language syntax and the real implementation of programs using C++. It is a known fact that this is a cryptic language for the beginner programmer, and usually the very complex Integrated Development Environments (IDE) existing today are not designed to solve this particular issue. Instead, the software seem to be an additional handicap. ZinjaI is a new IDE for writing C++ programs developed with student's needs in mind, with powerful features for making design, edition, debugging and logic tracing of programs simpler tasks. The utilization of this tool in several first year cohorts seems to make a significant improvement for the learning process.Presentado en el VIII Workshop Tecnología Informática aplicada en Educación (WTIAE)Red de Universidades con Carreras en Informática (RedUNCI

    BARR-C:2018 and MISRA C:2012: Synergy Between the Two Most Widely Used C Coding Standards

    Full text link
    The Barr Group's Embedded C Coding Standard (BARR-C:2018, which originates from the 2009 Netrino's Embedded C Coding Standard) is, for coding standards used by the embedded system industry, second only in popularity to MISRA C. However, the choice between MISRA C:2012 and BARR-C:2018 needs not be a hard decision since they are complementary in two quite different ways. On the one hand, BARR-C:2018 has removed all the incompatibilities with respect to MISRA C:2012 that were present in the previous edition (BARR-C:2013). As a result, disregarding programming style, BARR-C:2018 defines a subset of C that, while preventing a significant number of programming errors, is larger than the one defined by MISRA C:2012. On the other hand, concerning programming style, whereas MISRA C leaves this to individual organizations, BARR-C:2018 defines a programming style aimed primarily at minimizing programming errors. As a result, BARR-C:2018 can be seen as a first, dramatically useful step to C language subsetting that is suitable for all kinds of projects; critical projects can then evolve toward MISRA C:2012 compliance smoothly while maintaining the BARR-C programming style. In this paper, we introduce BARR-C:2018, we describe its relationship with MISRA C:2012, and we discuss the parallel and serial adoption of the two coding standards.Comment: 14 pages, 1 figur

    Turing - Inter School Programming Contest: Pedagogical Innovation in Programming Teaching for Middle Schools

    Get PDF
    Turing is an interscholastic tournament that aims at promoting the teaching of informatics, particularly the learning of programming through gamification. It is a competition between secondary schools, organized by teachers of informatics, for their own students. Turing was developed due to the lack of tournaments and competitions organized by teachers in this level of education. By contrast, universities and polytechnic institutes regularly organize programming tournaments, aimed at students of both secondary schools and universities. Given that its Turing is a pilot project, the first edition of the tournament will take place in March 2020 and it will occur simultaneously in three secondary schools. The students who are (voluntarily) enrolled in Turing will have an hour and thirty minutes to solve a set of problems in C programming language via Web, through the E-Learning platform Moodle while using the plugin CodeRunner

    ZinjaI: an integrated development environment for a first programming course with C++

    Get PDF
    Most of the students in Argentinian universities tends to experience huge adaptation problem over their first year. It is the main cause for very high indexes of abandonment. In the case of computing/informatics systems careers, in the first programming course, the students must learn a series of concepts related to computing algorithms abstraction, programming language syntax and the real implementation of programs using C++. It is a known fact that this is a cryptic language for the beginner programmer, and usually the very complex Integrated Development Environments (IDE) existing today are not designed to solve this particular issue. Instead, the software seem to be an additional handicap. ZinjaI is a new IDE for writing C++ programs developed with student's needs in mind, with powerful features for making design, edition, debugging and logic tracing of programs simpler tasks. The utilization of this tool in several first year cohorts seems to make a significant improvement for the learning process.Presentado en el VIII Workshop Tecnología Informática aplicada en Educación (WTIAE)Red de Universidades con Carreras en Informática (RedUNCI

    The Design of the Fifth Answer Set Programming Competition

    Full text link
    Answer Set Programming (ASP) is a well-established paradigm of declarative programming that has been developed in the field of logic programming and nonmonotonic reasoning. Advances in ASP solving technology are customarily assessed in competition events, as it happens for other closely-related problem-solving technologies like SAT/SMT, QBF, Planning and Scheduling. ASP Competitions are (usually) biennial events; however, the Fifth ASP Competition departs from tradition, in order to join the FLoC Olympic Games at the Vienna Summer of Logic 2014, which is expected to be the largest event in the history of logic. This edition of the ASP Competition series is jointly organized by the University of Calabria (Italy), the Aalto University (Finland), and the University of Genova (Italy), and is affiliated with the 30th International Conference on Logic Programming (ICLP 2014). It features a completely re-designed setup, with novelties involving the design of tracks, the scoring schema, and the adherence to a fixed modeling language in order to push the adoption of the ASP-Core-2 standard. Benchmark domains are taken from past editions, and best system packages submitted in 2013 are compared with new versions and solvers. To appear in Theory and Practice of Logic Programming (TPLP).Comment: 10 page

    A Two-Phase Dynamic Programming Algorithm Tool for DNA Sequences

    Get PDF
    Sequence alignment has to do with the arrangement of DNA, RNA, and protein sequences to identify areas of similarity. Technic ally, it involves the arrangement of the primary sequences of DNA, RNA, or protein to identify regions of similarity that may be a consequence of functional, structural, or evolutionary relationships between the sequences. Similarity may be a consequence of functional, s tructural, or evolutionary relationships between the sequences. If two sequences in an alignment share a common ancestor, mismatches can be interpreted as mutations, and gaps as insertions. Such information becomes of great use in vital areas such as the study of d iseases, genomics and generally in the biological sciences. Thus, sequence alignment presents not just an exciting field of study, but a field of great importance to mankind. In this light, we extensively studied about seventy (70) existing sequence alignment tools available to us. Most of these tools are not user friendly and cannot be used by biologists. The few tools that attempted both Local and Global algorithms are not ready available freely. We therefore implemented a sequence alignment tool (CU-Aligner) in an understandable, user-friendly and portable way, with click-of-a-button simplicity. This is done utilizing the Needleman-Wunsh and Smith-Waterman algorithms for global and local alignments, respectively which focuses primarily on DNA sequences. Our aligner is implemented in the Java language in both application and applet mode and has been efficient on all windows operating systems

    Programming Language Feature Agglomeration

    Get PDF
    Feature-creep is a well-known phenomenon in software systems. In this paper, we argue that feature-creep also occurs in the domain of programming languages. Recent languages are more expressive than earlier languages. However recent languages generally extend rather than replace the syntax (sometimes) and semantics (almost always) of earlier languages. We demonstrate this trend of agglomeration in a sequence of languages comprising Pascal, C, Java, and Scala. These are all block-structured Algol-derived languages, with earlier languages providing explicit inspiration for later ones. We present empirical evidence from several language-specific sources, including grammar definitions and canonical manuals. The evidence suggests that there is a trend of increasing complexity in modern languages that have evolved from earlier languages

    Dynamically typed languages

    Get PDF
    Dynamically typed languages such as Python and Ruby have experienced a rapid grown in popularity in recent times. However, there is much confusion as to what makes these languages interesting relative to statically typed languages, and little knowledge of their rich history. In this chapter I explore the general topic of dynamically typed languages, how they differ from statically typed languages, their history, and their defining features
    • …
    corecore