1,361 research outputs found

    Time travelling animated program executions

    Full text link
    Visualizations of program executions are often generated on the fly. This has many advantages relative to off-line generation of animated video files. Video files, however, trivially support flexible viewing via controls that include reverse and fast forward. Here we report on an implementation of time travel that combines the best of both techniques. In ToonTalk both the construction and execution of programs are animated. Time travel enables the user to move back in time and replay animated executions. The replay can be paused and the user can skip forward or further back in time. The implementation of time travel is based records of every input event and periodic snapshots of the state of the computation

    Reversible CSP Computations

    Full text link
    © 2021 IEEE. Personal use of this material is permitted. Permissíon from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertisíng or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.[EN] Reversibility enables a program to be executed both forwards and backwards. This ability allows programmers to backtrack the execution to a previous state. This is essential if the computation is not deterministic because re-running the program forwards may not lead to that state of interest. Reversibility of sequential programs has been well studied and a strong theoretical basis exists. Contrarily, reversibility of concurrent programs is still very young, especially in the practical side. For instance, in the particular case of the Communicating Sequential Processes (CSP) language, reversibility is practically missing. In this article, we present a new technique, including its formal definition and its implementation, to reverse CSP computations. Most of the ideas presented can be directly applied to other concurrent specification languages such as Promela or CCS, but we center the discussion and the implementation on CSP. The technique proposes different forms of reversibility, including strict reversibility and causal-consistent reversibility. On the practical side, we provide an implementation of a system to reverse CSP computations that is able to highlight the source code that is being executed in each forwards/backwards computation step, and that has been optimized to be scalable to real systems.A preliminary version of this work was presented at the 12th Conference on Reversible Computation [31]. The authors would like to thank the anonymous reviewers for their useful comments and constructive feedback that helped them to improve this work. This work was supported in part by the EU (FEDER) and the Spanish MCI/AEI under Grant TIN2016-76843-C4-1-R and Grant PID2019-104735RB-C41, in part by the Generalitat Valenciana under Grant Prometeo/2019/098 (DeepTrust), in part by JSPS KAKENHI under Grant JP17H01722, and in part by TAILOR, a project funded by EU Horizon 2020 research and innovation programme under GA 952215.Galindo-Jiménez, CS.; Nishida, N.; Silva, J.; Tamarit, S. (2021). Reversible CSP Computations. IEEE Transactions on Parallel and Distributed Systems. 32(6):1425-1436. https://doi.org/10.1109/TPDS.2021.3051747S1425143632

    The George-Anne

    Get PDF

    Cinema as a political propaganda during the Spanish Civil War: España 1936

    Get PDF
    El documental España 1936 ha pasado a la historia tanto por sus valores cinematográficos —está considerado uno de los primeros ejemplos de cine de montaje de guerra— como por el grado de participación que Luis Buñuel, uno de los más famosos directores españoles, tuvo en el mismo; un trabajo que, incluso hoy en día, continúa provocando varias hipótesis

    The Cord Weekly (January 24, 1996)

    Get PDF

    The Cord Weekly (January 24, 1996)

    Get PDF

    Cinema as a political propaganda during the Spanish Civil War: España 1936

    Get PDF
    El documental España 1936 ha pasado a la historia tanto por sus valores cinematográficos —está considerado uno de los primeros ejemplos de cine de montaje de guerra— como por el grado de participación que Luis Buñuel, uno de los más famosos directores españoles, tuvo en el mismo; un trabajo que, incluso hoy en día, continúa provocando varias hipótesis.The documentary film España 1936 has passed into history for its strictly cinematic values —being one of the first examples of a cinematic montage of war— and for the degree of participation that Luis Bunuel, one of the most famous Spanish film-makers, had in the documentary; a work that, even today, continues to provoke various hypotheses

    Sinatra: Stateful Instantaneous Updates for Commercial Browsers Through Multi-Version eXecution

    Get PDF
    Browsers are the main way in which most users experience the internet, which makes them a prime target for malicious entities. The best defense for the common user is to keep their browser always up-to-date, installing updates as soon as they are available. Unfortunately, updating a browser is disruptive as it results in loss of user state. Even though modern browsers reopen all pages (tabs) after an update to minimize inconvenience, this approach still loses all local user state in each page (e.g., contents of unsubmitted forms, including associated JavaScript validation state) and assumes that pages can be refreshed and result in the same contents. We believe this is an important barrier that keeps users from updating their browsers as frequently as possible. In this paper, we present the design, implementation, and evaluation of Sinatra, which supports instantaneous browser updates that do not result in any data loss through a novel Multi-Version eXecution (MVX) approach for JavaScript programs, combined with a sophisticated proxy. Sinatra works in pure JavaScript, does not require any browser support, thus works on closed-source browsers, and requires trivial changes to each target page, that can be automated. First, Sinatra captures all the non-determinism available to a JavaScript program (e.g., event handlers executed, expired timers, invocations of Math.random). Our evaluation shows that Sinatra requires 6MB to store such events, and the memory grows at a modest rate of 253KB/s as the user keeps interacting with each page. When an update becomes available, Sinatra transfer the state by re-executing the same set of non-deterministic events on the new browser. During this time, which can be as long as 1.5 seconds, Sinatra uses MVX to allow the user to keep interacting with the old browser. Finally, Sinatra changes the roles in less than 10ms, and the user starts interacting with the new browser, effectively performing a browser update with zero downtime and no loss of state

    Spartan Daily, October 29, 1973

    Get PDF
    Volume 61, Issue 20https://scholarworks.sjsu.edu/spartandaily/5780/thumbnail.jp
    corecore