Tag Archives: Kostis Sagonas

  • EUC 2014 – Andreas Löscher, Kostis Sagonas – A Nifty Tool to Call Hell from Heaven
    2014-08-12 Erlang Central

    Videos



    The Erlang/OTP system, for better or worse, comes with a native interface that allows execution of C code in Erlang applications in the form of NIFs. However, the translation of C data structures to Erlang ones and vice versa has to be implemented manually. Nifty is an automatic Erlang Native Interface generator that connects Erlang with an existing C library and allows calling its functions. The talk will show how using nifty one can build Erlang modules from regular C header files automaticall ...


    Read more


  • An Erlang-Based Framework for the Automatic Testing of Web Services
    2012-05-28 Erlang Central

    Videos



    Web Services are an essential part of modern web systems, yet their testing is an extremely slow and painful process. In this talk we will present a testing framework based on PropEr, xmerl, and the SOAP library of Yaws that aims for automatic property-based testing of Web Services.  We will show how one can use this framework to perform fully automatic response testing of Web Services, how given a WSDL specification of a Web Service the tool can generate structurally valid test cases, and, if ...


    Read more


  • ErLLVM
    2012-05-28 Erlang Central

    Videos



    This talk will describe the architecture, design decisions, and the current implementation and performance of ErLLVM. ErLLVM is an extension of the HiPE native code compiler of Erlang/OTP that uses the Low Level Virtual Machine (LLVM) compiler infrastructure as a back-end. As such, it benefits from the set of existing components and low-level optimizations that LLVM provides. More importantly, it is in principle readily available on all platforms that LLVM supports. ErLLVM is a full system cu ...


    Read more


  • A Scalability Study of Erlang/OTP
    2012-03-26 Erlang Central

    Videos



    The concurrency model of the Erlang language is claimed to be ideally suited for the multicore era. In theory it allows concurrent programs to achieve good scalability as the number of cores increases. OK, but what happens in practice? Since November 2011, we have embarked on a project that aims to improve the scalability of Erlang programs on machines with hundreds, thousands, and possibly even hundreds of thousands of cores. As a first step, we have created a benchmark suite, consisting of ...


    Read more


  • A PropEr Creation
    2011-10-31 Erlang Central

    Videos



    After the PropEr Talk at the London Factory in June, a small brouhaha took place on the Erlang-questions mailing list. Did the PropEr team have access to QuviQ QuickCheck code? Did they found one at PirateBay? Does Kostis have a powerful beam disassembler that generates (commented) Erlang source code from .beam files? Or is it simply that the PropEr team has super powers? This talk may possibly provide answers to some of these questions by describing how PropEr was created, or it may just giv ...


    Read more


  • A PropEr Talk
    2011-06-06 Erlang Central

    Videos



    PropEr is an open-source, Quickcheck-inspired tool for property-based testing in Erlang. Its salient feature, which is also the primary reason for PropEr's existence, is that it offers a proper integration of the language of types and specs of Erlang with properties. Any type can be used as a generator (PropEr knows how to create a shrinker for it) and any function spec can be directly used as simple property of a function. In addition, PropEr offers support that significantly simplifies the ...


    Read more


  • Cool Tools for Modern Erlang Program Development
    2011-03-21 Erlang Central

    Videos



    For many programmers, Erlang program development remains a relatively primitive process in the sense that it only consists of firing up one's favourite editor, writing a program, compiling it, and running it. Although there is a certain old fashioned charm in doing things this way, this style of programming is hardly adequate for modern, disciplined and easily maintainable Erlang program development. This talk will present how a suite of software tools can complement this process by automaticall ...


    Read more


  • Opaque Data Types in Erlang
    2009-11-12 Erlang Central

    Videos



    Many languages provide mechanisms for programmers to declare abstract data types (ADTs), hide the details of their implementation, and allow manipulation of these ADTs only by controlled interfaces. This information hiding strategy allows the implementation of the ADT module to be changed without disturbing the client programs.  In Erlang programs structural information about ADTs is exposed by pattern matching and type inspecting built-ins, making it very hard to guarantee that changes in the ...


    Read more


  • Cleaning up Erlang code is a dirty job but somebody’s gotta do it
    2009-09-05 Erlang Central

    Videos



    This paper is co-authored with Thanassis Avgerinos. It describes opportunities for automatically modernizing Erlang applications, cleaning them up, eliminating certain bad smells from their code, and occasionally also improving their performance. In addition, we present concrete examples of code improvements and our experiences from using a software tool with these capabilities, tidier, on Erlang code bases of significant size. ...


    Read more


  • Cleaning up Erlang code is a dirty job but somebody’s gotta do it
    2009-06-22 Erlang Central

    Videos

    The talk will present the design goals and current status of tidier, a software tool that tidies Erlang source code, making it cleaner, simpler, and often also more efficient. In contrast to other refactoring tools for Erlang, tidier is completely automatic and comes with a suite of code transformations that can be selected by its user via command-line options and applied in bulk on a set of modules or entire applications using a simple command. Alternatively, users can use tidier's GUI to inspe ...


    Read more