1,912 research outputs found

    Enhancing Trace Debugging with Algorithmic and Omniscient Debugging

    Full text link
    During many years, Print Debugging has been the most used method for debugging. Nowadays, however, industrial languages come with a trace debugger that allows programmers to trace computations step by step using breakpoints and state viewers. Almost all modern programming environments include a trace debugger that allows us to inspect the state of a computation in any given point. Nevertheless, this debugging method has been criticized for being completely manual and time-consuming. Other debugging techniques have appeared to solve some of the problems of Trace Debugging, but they suffer from other problems such as scalability. In this work we present a new hybrid debugging technique. It is based on a combination of Trace Debugging, Algorithmic Debugging and Omniscient Debugging to produce a synergy that exploits the best properties and strong points of each technique. We describe the architecture of our hybrid debugger and our implementation that has been integrated into Eclipse as a plugin.This work has been partially supported by the Spanish Ministerio de Economía y Competitividad (Secretaría de Estado de Investigación, Desarrollo e Innovación) under grant TIN2008-06622-C03-02 and by the Generalitat Valenciana under grant PROMETEO/2011/052. David Insa was partially supported by the Spanish Ministerio de Educación under FPU grant AP2010-4415.González, J.; Insa Cabrera, D.; Silva Galiana, JF. (2013). Enhancing Trace Debugging with Algorithmic and Omniscient Debugging. En Logic-Based Program Synthesis and Transformation. Springer. 183-201. http://hdl.handle.net/10251/72827S18320

    Farmer seed networks make a limited contribution to agriculture? Four common misconceptions

    Get PDF
    The importance of seed provisioning in food security and nutrition, agricultural development and rural livelihoods, and agrobiodiversity and germplasm conservation is well accepted by policy makers, practitioners and researchers. The role of farmer seed networks is less well understood and yet is central to debates on current issues ranging from seed sovereignty and rights for farmers to GMOs and the conservation of crop germplasm. In this paper we identify four common misconceptions regarding the nature and importance of farmer seed networks today. (1) Farmer seed networks are inefficient for seed dissemination. (2) Farmer seed networks are closed, conservative systems. (3) Farmer seed networks provide ready, egalitarian access to seed. (4) Farmer seed networks are destined to weaken and disappear. We challenge these misconceptions by drawing upon recent research findings and the authors’ collective field experience in studying farmer seed systems in Africa, Europe, Latin America and Oceania. Priorities for future research are suggested that would advance our understanding of seed networks and better inform agricultural and food policy

    Optimization Techniques for Algorithmic Debugging

    Full text link
    [EN] Nowadays, undetected programming bugs produce a waste of billions of dollars per year to private and public companies and institutions. In spite of this, no significant advances in the debugging area that help developers along the software development process have been achieved yet. In fact, the same debugging techniques that were used 20 years ago are still being used now. Along the time, some alternatives have appeared, but there still is a long way for them to be useful enough to get into the software development process. One of them is algorithmic debugging, which abstracts the information the user has to investigate to debug the program, allowing them to focus on what is happening instead of how it is happening. This abstraction comes at a price: the granularity level of the bugs that can be detected allows for isolating wrongly implemented functions, but which part of them contains the bug cannot be found out yet. This thesis focusses on improving algorithmic debugging in many aspects. Concretely, the main aims of this thesis are to reduce the time the user needs to detect a programming bug as well as to provide the user with more detailed information about where the bug is located. To achieve these goals, some techniques have been developed to start the debugging sessions as soon as possible, to reduce the number of questions the user is going to be asked about, and to augment the granularity level of those bugs that algorithmic debugging can detect, allowing the debugger in this way to keep looking for bugs even inside functions. As a result of this thesis, three completely new techniques have been defined, an already existent technique has been improved, and two new algorithmic debugging search strategies have been defined that improve the already existent ones. Besides these theoretical results, a fully functional algorithmic debugger has been implemented that contains and supports all these techniques and strategies. This debugger is written in Java, and it debugs Java code. The election of this language is justified because it is currently one of the most widely extended and used languages. Also because it contains an interesting combination of unsolved challenges for algorithmic debugging. To further increase its usability, the debugger has been later adapted as an Eclipse plugin, so it could be used by a wider number of users. These two debuggers are publicly available, so any interested person can access them and continue with the research if they wish so.[ES] Hoy en día, los errores no detectados de programación suponen un gasto de miles de millones al año para las empresas e instituciones públicas y privadas. A pesar de esto, no ha habido ningún avance significativo en el área de la depuración que ayude a los desarrolladores durante la fase de desarrollo de software. De hecho, las mismas técnicas de depuración que se utilizaban hace 20 años se siguen utilizando ahora. A lo largo del tiempo, han surgido algunas alternativas, pero todavía queda un largo camino para que estas sean lo suficientemente útiles como para abrirse camino en el proceso de desarrollo de software. Una de ellas es la depuración algorítmica, la cual abstrae la información que el programador debe investigar para depurar el programa, permitiéndole de este modo centrarse en el qué está ocurriendo en vez de en el cómo. Esta abstracción tiene un coste: el nivel de granularidad de los errores que pueden detectarse nos permite como máximo aislar funciones mal implementadas, pero no averiguar qué parte de estas contiene el error. Esta tesis se centra en mejorar la depuración algorítmica en muchos aspectos. Concretamente, los principales objetivos de esta tesis son reducir el tiempo que el usuario necesita para detectar un error de programación así como proporcionar información más detallada de dónde se encuentra el error. Para conseguir estos objetivos, se han desarrollado técnicas para iniciar las sesiones de depuración lo antes posible, reducir el número de preguntas que se le van a realizar al usuario, y aumentar el nivel de granularidad de los errores que la depuración algorítmica puede detectar, permitiendo así seguir buscando el error incluso dentro de las funciones. Como resultado de esta tesis, se han definido tres técnicas completamente nuevas, se ha mejorado una técnica ya existente, y se han definido dos nuevas estrategias de depuración algorítmica que mejoran las previamente existentes. Además de los resultados teóricos, también se ha desarrollado un depurador algorítmico completamente funcional que contiene y respalda todas estas técnicas y estrategias. Este depurador está escrito en Java y depura código Java. La elección de este lenguaje se justifica debido a que es uno de los lenguajes más ampliamente extendidos y usados actualmente. También debido a que contiene una combinación interesante de retos todavía sin resolver para la depuración algorítmica. Para aumentar todavía más su usabilidad, el depurador ha sido posteriormente adaptado como un plugin de Eclipse, de tal manera que pudiese ser usado por un número más amplio de usuarios. Estos dos depuradores están públicamente disponibles para que cualquier persona interesada pueda acceder a ellos y continuar con la investigación si así lo deseara.[CA] Hui en dia, els errors no detectats de programació suposen una despesa de milers de milions a l'any per a les empreses i institucions públiques i privades. Tot i això, no hi ha hagut cap avanç significatiu en l'àrea de la depuració que ajude als desenvolupadors durant la fase de desenvolupament de programari. De fet, les mateixes tècniques de depuració que s'utilitzaven fa 20 anys es continuen utilitzant ara. Al llarg del temps, han sorgit algunes alternatives, però encara queda un llarg camí perquè estes siguen prou útils com per a obrir-se camí en el procés de desenvolupament de programari. Una d'elles és la depuració algorítmica, la qual abstrau la informació que el programador ha d'investigar per a depurar el programa, permetent-li d'esta manera centrar-se en el què està ocorrent en compte de en el com. Esta abstracció té un cost: el nivell de granularitat dels errors que poden detectar-se ens permet com a màxim aïllar funcions mal implementades, però no esbrinar quina part d'estes conté l'error. Esta tesi es centra a millorar la depuració algorítmica en molts aspectes. Concretament, els principals objectius d'esta tesi són reduir el temps que l'usuari necessita per a detectar un error de programació així com proporcionar informació més detallada d'on es troba l'error. Per a aconseguir estos objectius, s'han desenvolupat tècniques per a iniciar les sessions de depuració com més prompte millor, reduir el nombre de preguntes que se li formularan a l'usuari, i augmentar el nivell de granularitat dels errors que la depuració algorítmica pot detectar, permetent així continuar buscant l'error inclús dins de les funcions. Com resultat d'esta tesi, s'han definit tres tècniques completament noves, s'ha millorat una tècnica ja existent, i s'han definit dos noves estratègies de depuració algorítmica que milloren les prèviament existents. A més dels resultats teòrics, també s'ha desenvolupat un depurador algorítmic completament funcional que conté i protegix totes estes tècniques i estratègies. Este depurador està escrit en Java i depura codi Java. L'elecció d'este llenguatge es justifica pel fet que és un dels llenguatges més àmpliament estesos i usats actualment. També pel fet que conté una combinació interessant de reptes encara sense resoldre per a la depuració algorítmica. Per a augmentar encara més la seua usabilitat, el depurador ha sigut posteriorment adaptat com un plugin d'Eclipse, de tal manera que poguera ser usat per un nombre més ampli d'usuaris. Estos dos depuradors estan públicament disponibles perquè qualsevol persona interessada puga accedir a ells i continuar amb la investigació si així ho desitjara.Insa Cabrera, D. (2016). Optimization Techniques for Algorithmic Debugging [Tesis doctoral]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/68506TESISPremios Extraordinarios de tesis doctorale

    Doctor of Philosophy

    Get PDF
    dissertationDomain-specific languages (DSLs) are increasingly popular, and there are a variety of ways to create a DSL. A DSL designer might write an interpreter from scratch, compile the DSL to another language, express DSL concepts using only the existing forms of an existing language, or implement DSL constructs using a language's extension capabilities, including macros. While extensible languages can offer the easiest opportunity for creating a DSL that takes advantage of the language's existing infrastructure, existing tools for debugging fail to adequately adapt the debugging experience to a given domain. This dissertation addresses the problem of debugging DSLs defined with macros and describes an event-oriented approach that works well with a macro-expansion view of language implementation. It pairs the mapping of DSL terms to host terms with an event mapping to convert primitive events back to domain-specific concepts. Domain-specific events can be further inspected or manipulated to construct domain-specific debuggers. This dissertation presents a core model of evaluation and events and also presents a language design-analogous to pattern-based notations for macros, but in the other direction-for describing how events in a DSL's expansion are mapped to events at the DSL's level. The domain-specific events can enable useful, domain-specific debuggers, and the dissertation introduces a design for a debugging framework to help with debugger construction. To validate the design of the debugging framework, a debugging framework, Ripple, is implemented, and this dissertation demonstrates that with a modest amount of work, Ripple can support building domain-specific debuggers

    Proceedings of The Multi-Agent Logics, Languages, and Organisations Federated Workshops (MALLOW 2010)

    Get PDF
    http://ceur-ws.org/Vol-627/allproceedings.pdfInternational audienceMALLOW-2010 is a third edition of a series initiated in 2007 in Durham, and pursued in 2009 in Turin. The objective, as initially stated, is to "provide a venue where: the cost of participation was minimum; participants were able to attend various workshops, so fostering collaboration and cross-fertilization; there was a friendly atmosphere and plenty of time for networking, by maximizing the time participants spent together"

    Repositioning the Facilities in Technical College Workshops for Efficiency: A Case Study of North Central Nigeria

    Get PDF
    This article focuses on assessing the facilities in Government Technical College workshops in the context of a developing country. A descriptive survey design was adopted. Two research questions and a hypothesis were formulated to guide the study. A 35-item questionnaire was developed based on the National Board for Technical Education (NBTE) standards on Technical College workshops, and was validated by three experts. Data was collected from 101 administrators, 140 teachers, and 24 workshop personnel randomly sampled and stratified along trades in 19 Government Technical Colleges in North Central Nigeria. Mean was employed to answer the research questions while one-way analysis of variance (ANOVA) was employed to test the hypothesis using Statistical Package for Social Sciences (SPSS) for analysis. Results revealed that administrators, teachers, and workshop personnel shared similar views on inadequacy of facilities in Technical College workshops. It was therefore recommended that: The private sector should be encouraged to initiate and participate in the provision of facilities using such methods as build operate-and-transfer (BOT), build own-operate and transfer (BOOT) and rehabilitate-operate and transfer (ROT); special intervention funds should be set aside by Government for procurement of workshop facilities to technical colleges, such channels may include Education Tax Fund (ETF) as practiced in Nigeria; Non Governmental Organizations (NGOs), Parent Teacher Association (PTA), and Community Based Organizations (CBOs) should be asked for support in supplying relevant facilities to the workshops as obtained in some nations; and that a specific percentage of income tax generated annually by the Government should be utilized for provision of workshop facilities in technical colleges

    Comparison and Consolidation of Models of Personal Epistemologies

    Get PDF
    Assumptions that students and instructors have about their personal epistemologies have important effects on their expectations and performance in career and technical classrooms and laboratories. Personal epistemologies of career and technical education students influence their behaviors in classes and their interactions with instructors. The conceptual analysis of this research was based on three major theoretical frameworks of personal epistemology: qualitative developmental stages, quantitative belief systems, and practitioner epistemological resources. Seven models of personal epistemologies were compared, and a consolidated conceptual framework is presented to career and technical educators. This new conceptual matrix is intended to provide a roadmap for better understanding theoretical frameworks of personal epistemologies, and give career and technical education educators insights for further research and implications for practice

    Sustainable Development and Islamic Ethical Tasks for Business-Organisations

    Get PDF
    The paper seeks to addresses the issues of sustainable development and it would be viewed as Islamic moral duties for business. To what level should business bodies should join in the sustainable development activities? Based on the existing literature, this study assimilates conventional as well as Islamic points about environment and sustainable development and contends that whatever explanation of sustainable development one may subscribe, ultimately, each should culminate in environmental concern. This study contends that Islamic style is more friendly to environmental protection and issues touching sustainable development have moral, social and ethical responsibility. With intense commitment of the businesses in the matter of Islamic ethics to equity, justice and wellbeing of humans, it demands that business organisations in the Islamic and other countries should participate in the sustainable development endeavours. Because of ethics of environmental aspects in Islam, the value chains of suppliers through customers, many companies may be alert for the environmental characteristics and effects of their businesses

    Honors in Practice, Volume 6 (complete issue)

    Get PDF
    CONTENTS Editorial Policy Submission Guidelines Dedication to Donzell Lee Editor’s Introduction • Ada Long RESEARCH MATTERS Conducting Research in Honors • Emily C Walshe Is Originality an Appropriate Requirement for Undergraduate Publication? • Nathan Hilberg Individual Achievement in an Honors Research Community: Teaching Vygotsky’s Zone of Proximal Development • Kaitlin A Briggs Student-Guided Thesis Support Groups • Jennifer Beard, Ryan D Shelton, Amanda Stevens, George H Swindell IV, and Raymond J Green CURRICULUM MATTERS More than a COIN Flip: Improving Honors Education with Real Time Simulations Based on Contemporary Events • Kurt Hackemer To Discuss or Not to Discuss: Integrating Pedagogies for Honors and Mathematics • William Griffiths, Nancy Reichert, and LR Ritter French à la carte: Maintaining a Language Program on a Shoestring • Sheilagh Margaret Riordan The Value of Extending the Honors Contract Beyond One Semester: A Case Study with Smithsonian Dinosaurs • Alyce DiLauro, Teron Meyers, and Laura Guertin Service Learning and Skunkworks in a Senior Honors Colloquium • Michael Cundall Beyond the Great Books: Increasing the Flexibility, Scope, and Appeal of an Honors Curriculum • Matthew C Altman PROGRAMMATIC MATTERS Students Engaging Students in the Honors Experience • Sara Brady, Hesham Elnagar, and Shane Miller Ad Tracking, Brand Equity Research, and Your Honors Program? • William A Ashton, Barbara Ashton, Renny Eapen, and Erzulie Mars BIG IDEAS MATTER From the White House to Our House: The Story of an Honors College Vegetable Garden • Michael Lund and Geoffrey Orth Studies in Cyberspace: Honors, Professional Teacher Development,Curricular Development, and Systemic Change in Louisiana • Brian C Etheridge, Galen Turner, Heath Tims, and Christian A Duncan Fertile Ground: Reflections on Collaborative Student-Faculty Research in the Arts • Mimi Killinger and Aya Mares LOOKING BACK MATTERS Teamwork for NCHC • Lydia Lyons When It Comes Time Not to “Jump the Shark”: Stepping Down as Director • Nick Flynn Celebrating Twenty Years of Honors through Oral History: Making an Honors Program Video Documentary • Catherine Irwin Becoming Part of a Story • Ted L Estess About the Authors NCHC Publication Order Form
    corecore