pbougou / proglangs

Programming Languages

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Programming Languages ΙΙ

Title Description
Algorithms in Haskell Algorithmic implentations in Haskell.
Property-based testing in Haskell's QuickCheck
  • Tree data structure implementation and testing
  • Bird's tree implementation and testing
Virtual machines Using GNU C extensions and [these techniques] to eliminate branch prediction overhead (https://courses.softlab.ntua.gr/pl2/2009b/slides/vm.pdf), there are implemented interpreters for:
Garbage collector It is integrated with the interpreter for bytecode language. Algorithms and techniques used for gc:
  • Find all unreachable memory objects with mark and sweep.
  • GC is called every time a new heap allocation happens.
    Axiomatic semantics For program verification in C programming language, Frama-C is used. There are verified two algorithms' implementations:
    • Find the maximum number of same consecutive elements in an array.
    • Check if an array contains the same element twice.
      Type inference in Haskell Type inference a la Hidney-Milner for the simply-typed lambda calculus.
      Denotational semantics Implementation of denotational_semantics for two small languages in Haskell:
      Scripting Languages Implementation of websites, which host a game, with PHP and client-side scripting with Python for playing and winning the game.

      About

      Programming Languages

      License:MIT License


      Languages

      Language:C 51.0%Language:Haskell 20.0%Language:HyPhy 10.2%Language:Brainfuck 7.9%Language:PHP 5.5%Language:Python 2.8%Language:Makefile 1.6%Language:C++ 0.6%Language:CSS 0.4%