Skip to content

Instantly share code, notes, and snippets.

View nicola-gigante's full-sized avatar

Nicola Gigante nicola-gigante

View GitHub Profile
@nicola-gigante
nicola-gigante / fitpar.tex
Created March 12, 2018 05:35
Life-saving LaTeX trick for typography paranoids like me...
\documentclass{article}
\usepackage{microtype}
\newcommand\fitpar{\looseness=-1}
\begin{document}
This is a long paragraph on multiple lines, really a lot of useless lines, with
lots of useless characters and lots of useless punctuation, which could fit
@nicola-gigante
nicola-gigante / lookout.c
Created November 28, 2016 16:43
Esempio di programma C che usa la chiamata di sistema `stat()` per avvisare quando un file viene modificato.
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <errno.h>
#include <unistd.h>
#include <sys/stat.h>
int main(int argc, char **argv)
{
if(argc < 2) {
@nicola-gigante
nicola-gigante / su.c
Created November 17, 2016 08:59
Implementazione di una semplice versione del comando 'su' di Unix
/*
* Questo programma imita il comportamento del comando 'su' di UNIX.
* L'uso dalla riga di comando è il seguente:
*
* su user cmd arg1 ... argn
*
* Il programma lanciato in questo modo esegue il comando 'cmd arg1 ... argn'
* con l'identità dell'utente 'user', che può essere specificato sia per nome
* che tramite l'UID.
*
@nicola-gigante
nicola-gigante / main.cpp
Created June 3, 2015 15:53
Minimalist metaprogramming example in the spirit of Boost.Units
//
// Boost.Units-like demo
// C++ User Group Udine
//
#include "units.h"
int main()
{
quantity<mass> m = 42 * kilogram;
@nicola-gigante
nicola-gigante / List.hs
Created November 18, 2014 15:21
A list-like datatype implemented with function composition to have constant-time appending. All the operations seems to preserve the original lazyness properties. Is there something wrong with this code?
{-# LANGUAGE TypeFamilies #-}
module List (
List,
fromList,
toList,
empty,
singleton,
head,
tail