Hackweek is a place for fun and things and also great things and a lot of fun. Some things don't require a reason - they are fun, that's all to it. Here goes a small competition with a lot of fun to it.

Find Klaas in the office.
Make a romantic photo with him.
Win a competition. ... Profit! (Get a YubiKey as a prize.)

Looking for hackers with the skills:

fun haskell visualcobol turbopascal

This project is part of:

Hack Week 17

Activity

  • over 7 years ago: hennevogel left this project.
  • over 7 years ago: enavarro_suse liked this project.
  • over 7 years ago: TBro liked this project.
  • over 7 years ago: rsimai liked this project.
  • over 7 years ago: hennevogel joined this project.
  • over 7 years ago: dpopov liked this project.
  • over 7 years ago: vuntz liked this project.
  • over 7 years ago: stfnknorr liked this project.
  • over 7 years ago: j_renner liked this project.
  • over 7 years ago: cbruckmayer liked this project.
  • over 7 years ago: dmaiocchi liked this project.
  • over 7 years ago: fschnizlein liked this project.
  • over 7 years ago: kalabiyau added keyword "fun" to this project.
  • over 7 years ago: kalabiyau added keyword "haskell" to this project.
  • over 7 years ago: kalabiyau added keyword "visualcobol" to this project.
  • over 7 years ago: kalabiyau added keyword "turbopascal" to this project.
  • over 7 years ago: kalabiyau started this project.
  • over 7 years ago: kalabiyau liked this project.
  • over 7 years ago: kalabiyau originated this project.

  • Comments

    • TBro
      over 7 years ago by TBro | Reply

      Find my challenge application here: https://w3.suse.de/~tbro/klaas_challenge.png

      • coolo
        over 7 years ago by coolo | Reply

        That's clearly not 'in the office'

        • kfreitag
          over 7 years ago by kfreitag | Reply

          That is inaccurate anyway. It should say "Find him outside his office. Or at best, do not find him". Artiem is just slacking on fixing that.

    Similar Projects

    GHC-9.14 and split Hadrian from GHC build by osukup

    Description

    Prepare openSUSE Tumbleweed project for new GHC Haskell compiler and separate builder (Hadrian) from GHC build

    Goals

    • have GHC-9.14 project with working compiler and if possible filled with packageset
    • have Hadrian in own package built with bootstrap compiler to separate Hadrian bootstrap from ghc bootstrap

    Resources

    devel:languages:haskell

    d:l:h:ghc-9.12.x

    opensuse Haskell rpm macros

    opensuse haskell package gen project


    eBPF bytecode emitter in Haskell by kalfalakh

    Description

    Newbie level knowledge of eBPF and some knowledge of Haskell. The goal for this hackweek is to catch two birds with one stone; get familiar with eBPF and learn more about Haskell, hence implement something related to eBPF in Haskell. Given an input, which is a program, represented as eBPF instructions, prepare a fully built eBPF bytecode ready to be loaded into the Kernel.

    Goals

    • Recap on ADTs in Haskell, type classes and their instances / deriving, on pattern matching and higher order functions
    • Read and understand RFC 9669
    • Implement the entire pipeline; parsing the input, verifying the input, building instructions, encoding them and concatenating them
    • Deal with all the learning, bugs and difficulties encountered on the way

    Progress

    Last day of hackweek and this is what I have so far.

    • ADTs implemented to correctly type all operations, classes, opcodes, instructions and other instruction specific types
    • opcodes and opcode builders based on specification are implemented.
    • Encoder is ready for 64-bit instruction format. Extended 128-bit instruction format is not yet supported
    • Only ALU and ALU64 instructions API is provided. JMP, LD, ST for base32 and base64 are missing. swap and atomic are missing
    • All ALU and ALU64 instructions (except MOV and MOVSX) are tested manually and are correctly encoded

    Whats next?

    There is still a lot left to do:

    • Input parser and formatter + some kind of basic verifier
    • API for remaining instruction classes
    • Proper testing mechanism
    • swap and atomic instructions
    • Loader

    Resources

    • RFC 9669
    • https://ebpf.io/
    • https://www.haskell.org/documentation/