I hereby claim:
- I am gabrielelana on github.
- I am gabrielelana (https://keybase.io/gabrielelana) on keybase.
- I have a public key whose fingerprint is 181C 039B 8033 4010 66D3 C5E8 F3A4 6AB3 14CA E60E
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
from evdev import UInput, InputDevice,categorize, ecodes | |
myKey = UInput.from_device('/dev/input/event7', name='MyKeyboard') | |
dev = InputDevice('/dev/input/event7') | |
print(dev) | |
for event in dev.read_loop(): | |
if event.type == ecodes.EV_KEY: | |
print(event) |
import threading | |
import time | |
from evdev import UInput, InputDevice,categorize, ecodes | |
from copy import copy | |
myKey = UInput.from_device('/dev/input/event2', name='MyKeyboard') | |
dev = InputDevice('/dev/input/event2') | |
events = [] | |
waiting = False |
Title: Foundation of Functional Programming: Theory and Practice
Abstract: Teoria delle categorie, morfismi, algebre, monoidi, semigruppi, funtori e ovviamente monadi! Dominare la programmazione funzionale per poterla sfruttare al massimo passa da una conoscenza teorica che è difficile da distillare partendo dalle disparate risorse ad oggi esistenti. Durante il corso verranno spiegati questi concetti in maniera rigorosa ma con frequenti riferimenti pratici per rendere il tutto più digeribile e comprensibile. L’obiettivo è quello di ottenere delle basi teoriche sufficienti per poter riconoscere e usare i costrutti della programmazione funzionale in maniera confidente ed efficace.
What: Questa terza
Title: What the BEAM: Introduction to the Erlang/Elixir Virtual Machine
Abstract: Per sfruttare al massimo Erlang/Elixir non é sufficiente conoscere il linguaggio, la semantica di questi linguaggi é indissolubilmente legata al loro runtime: la virtual machine BEAM. Un corso di due giorni per esplorare la BEAM, le sue carateristiche, come sfruttarla al meglio e cosa evitare. Il corso é rivolto a tutte quelle persone che hanno messo gli occhi su Erlang/Elixir e vogliono fare un passo avanti per poter realizzare software production ready.
What: Il corso durerá due giorni e sará strutturato come segue
Cosa sono
import Debug.Trace (trace) | |
-- Try to implement and use a `putString` function without the RW and | |
-- see the behaviour of calling it and calling it multiple times | |
-- type RW = RW | |
type RW = Integer | |
type MIO a = (RW -> (a, RW)) |
module Parser.Combinators where | |
import Test.Hspec | |
import Data.Either | |
import Data.Char | |
import Control.Applicative | |
import Data.Foldable | |
newtype Parser a = Parser (String -> (Either String a, String)) |