285 research outputs found

    R Cookbook

    Get PDF

    R Cookbook

    Get PDF
    Abstracts not available for BookReview

    1957-2007: 50 Years of Higher Order Programming Languages

    Get PDF
    Fifty years ago one of the greatest breakthroughs in computer programming and in the history of computers happened – the appearance of FORTRAN, the first higher-order programming language. From that time until now hundreds of programming languages were invented, different programming paradigms were defined, all with the main goal to make computer programming easier and closer to as many people as possible. Many battles were fought among scientists as well as among developers around concepts of programming, programming languages and paradigms. It can be said that programming paradigms and programming languages were very often a trigger for many changes and improvements in computer science as well as in computer industry. Definitely, computer programming is one of the cornerstones of computer science. Today there are many tools that give a help in the process of programming, but there is still a programming tasks that can be solved only manually. Therefore, programming is still one of the most creative parts of interaction with computers. Programmers should chose programming language in accordance to task they have to solve, but very often, they chose it in accordance to their personal preferences, their beliefs and many other subjective reasons. Nevertheless, the market of programming languages can be merciless to languages as history was merciless to some people, even whole nations. Programming languages and developers get born, live and die leaving more or less tracks and successors, and not always the best survives. The history of programming languages is closely connected to the history of computers and computer science itself. Every single thing from one of them has its reflexions onto the other. This paper gives a short overview of last fifty years of computer programming and computer programming languages, but also gives many ideas that influenced other aspects of computer science. Particularly, programming paradigms are described, their intentions and goals, as well as the most of the significant languages of all paradigms

    ProverX: rewriting and extending prover9

    Get PDF
    O propósito principal deste projecto é tornar o demonstrador automático de teoremas Prover9 programável e, por conseguinte, extensível. Este propósito foi conseguido acrescentando um interpretador de Python, uma linha de comandos e uma biblioteca de módulos, objectos e funções escritos em Python para interagir com ficheiros de Prover9 e Mace4. Foi também criada uma “interface” gráfica de utilizador (GUI) sob a forma de uma aplicação web para trazer aos utilizadores um meio mais eficiente e rápido de trabalhar com demonstrações automáticas de teoremas. A nova biblioteca de “scripting” oferece aos utilizadores novas funcionalidades tais como correr várias sessões simultâneas de Prover9 parando automaticamente quando uma demonstração (ou um contraexemplo) é encontrada, elaborar estratégias para aumentar a velocidade com que as demonstrações são encontradas ou diminuir o tamanho das mesmas. Outro módulo permite interagir com o sistema de álgebra GAP. Sobre esta biblioteca, muitas outras funcionalidades podem ser facilmente acrescentadas pois o objectivo principal é dar aos utilizadores a capacidade de acrescentar novas funcionalidades ao Prover9. Resumindo, o objectivo deste projecto é oferecer à comunidade matemática um ambiente integrado para trabalhar com demonstração automática de teoremas.The primary purpose of this project is to extend Prover9 with a scripting language. This was achieved by adding a Python interpreter, an interactive command line and a special scripting library to interact with Prover9 and Mace4 files. A user interface in the form of a web application was also created to help users achieve a more rapid and efficient way of working with automated theorem proving. The new scripting library offers utilities that allows a user to run several Prover9 sessions concurrently and to create strategies for increasing the effectiveness of the proof search or to search for shorter proofs. Another module allows to interact with the algebra system GAP. Based on the library, many more functionalities can be easily added, as the main goal is to give users the ability to extend the functionality of Prover9 the way they see fit. In conclusion, the aim of this project is to offer to the mathematical community an integrated environment for working with automated reasonin

    Silverlight Game Engine

    Get PDF
    Bakalářská práce popisuje tvorbu 2.5D herního enginu určeného pro platformu Microsoft Silverlight 3.0 s využitím programovacího jazyka C# pro kód jadra samotního engineu a jazyka XAML pro tvorbu uživatelského rozhraní. V první kapitole je úvod do světa herních enginu, dále jsou vzpomenuty cíle této práce a motivace. V druhé kapitole následuje představení jednotlivých využitých nástrojů a technologií včetně porovnání platformy Microsoft Silverlight s platformou Adobe Flash. Třetí kapitola popisuje řešení které existovaly v čase psaní této práce. Čtvrtá kapitola popisuje popis herního enginu a návrh jednotlivých částí enginu. Samotný postup tvorby enginu je popsán v páte kapitole. Jednotlivé části zahrnují popis herní smyčky a více možností jak ji realizovat, vykreslování mapy, herní objekty, jejich hierarchie a jejich využití, spracovaní uživatelských vstupů z klávesnice a myši, systém řídící pohyb objektů po mapě, jejich animaci, systém událostí, efekty počasí a pixel shader efekty, zvukový systém a nakonec editor map. Šestá kapitola obsahuje výsledky testů a jejich vyhodnocení. V závěru práce jsou zhodnoceny výsledky práce a jsou představeny návrhy pro další rozšiření. Pŕílohy obsahují detailní popis formátu, v kterém se ukládají mapy, obsah přiloženého CD, ukázkový kód v jazyce XAML a v jazyce HLSL.This bachelor's thesis describes the creation of a 2.5D game engine for Microsoft Silverlight 3.0 platform using C# programming language and XAML language to create user interface. Used tools and existing solutions are introduced in the introductory chapters. In following chapters the design and the process of creating the game engine itself is described. In this section multiple design choices for parts of game engine are presented, and the chosen ones are described in more detail together with justification of these choices. In the last part the outcome of the project is evaluated and ideas for further development are presented.

    Diseño e implementación de una aplicación móvil para compartir fotos de manera contributiva

    Get PDF
    Throughout the following document, the concept for a photo-sharing mobile Application will be explained. Within its pages, the document demonstrates the development of an Application to create “social Events”, where users can create digital collaborative spaces to share their pictures, with other people who take part in the same event. The proposal is to be achieved by using the latest available technological tools for iOS development, as well as server Backend development. The fundamental requirements and specifications will be presented, as will all the considerations needed from the final user’s perspective, and all the technical issues regarding the design and development of the software Application. Parting from the initial presentation of the concept, going through the research phase and inspection of the required technologies, getting to the final design and implementation of the App, each stage is approached throughout the document in a way to give the reader a clear idea of the underlying motivation and philosophy adapted in the Project. In this manner, the reader is able to keep in mind this information, and will therefore be able to understand and justify the more practical and concrete sections of the Project. Finally it –the document- will present an overall evaluation including the initial goals set in contrast with the resulting software product. This is one in order to offer a list of possible future improvements that could in turn result in a better user experience, always in accordance to the initially stated philosophy and general purpose for the Application
    corecore