15,303 research outputs found

    Expanding JavaScript\u27s metaobject protocol

    Get PDF

    A machine vision extension for the Ruby programming language

    Get PDF
    Dynamically typed scripting languages have become popular in recent years. Although interpreted languages allow for substantial reduction of software development time, they are often rejected due to performance concerns. In this paper we present an extension for the programming language Ruby, called HornetsEye, which facilitates the development of real-time machine vision algorithms within Ruby. Apart from providing integration of crucial libraries for input and output, HornetsEye provides fast native implementations (compiled code) for a generic set of array operators. Different array operators were compared with equivalent implementations in C++. Not only was it possible to achieve comparable real-time performance, but also to exceed the efficiency of the C++ implementation in several cases. Implementations of several algorithms were given to demonstrate how the array operators can be used to create concise implementations.</p

    Objective Styles in Northern Field Science

    Get PDF
    Social studies of science have often treated natural field sites as extensions of the laboratory. But this overlooks the unique specificities of field sites. While lab sites are usually private spaces with carefully controlled borders, field sites are more typically public spaces with fluid boundaries and diverse inhabitants. Field scientists must therefore often adapt their work to the demands and interests of local agents. I propose to address the difference between lab and field in sociological terms, as a difference in style. A field style treats epistemic alterity as a resource rather than an obstacle for objective knowledge production. A sociological stylistics of the field should thus explain how objective science can co-exist with radical conceptual difference. I discuss examples from the Canadian North, focussing on collaborations between state wildlife biologists and managers, on the one hand, and local Aboriginal Elders and hunters, on the other. I argue that a sociological stylistics of the field can help us to better understand how radically diverse agents may collaborate across cultures in the successful production of reliable natural knowledge

    Perspectives for Electronic Books in the World Wide Web Age

    Get PDF
    While the World Wide Web (WWW or Web) is steadily expanding, electronic books (e-books) remain a niche market. In this article, it is first postulated that specialized contents and device independence can make Web-based e-books compete with paper prints; and that adaptive features that can be implemented by client-side computing are relevant for e-books, while more complex forms of adaptation requiring server-side computations are not. Then, enhancements of the WWW standards (specifically of XML, XHTML, of the style-sheet languages CSS and XSL, and of the linking language XLink) are proposed for a better support of client-side adaptation and device independent content modeling. Finally, advanced browsing functionalities desirable for e-books as well as their implementation in the WWW context are described

    Debugging Native Extensions of Dynamic Languages

    Full text link
    Many dynamic programming languages such as Ruby and Python enable developers to use so called native extensions, code implemented in typically statically compiled languages like C and C++. However, debuggers for these dynamic languages usually lack support for also debugging these native extensions. GraalVM can execute programs implemented in various dynamic programming languages and, by using the LLVM-IR interpreter Sulong, also their native extensions. We added support for source-level debugging to Sulong based on GraalVM's debugging framework by associating run-time debug information from the LLVM-IR level to the original program code. As a result, developers can now use GraalVM to debug source code written in multiple LLVM-based programming languages as well as programs implemented in various dynamic languages that invoke it in a common debugger front-end.Comment: 7 pages, 7 figures, accepted at 15th International Conference on Managed Languages & Runtimes (ManLang'18
    • 

    corecore