Skip to content

Instantly share code, notes, and snippets.

View SuzanneSoy's full-sized avatar

Suzanne Soy SuzanneSoy

View GitHub Profile
#!/bin/sh
# Implémentation d'un générateur d'images de disquette au format SFS
# (Système de Fichiers Simple)
#
# Spécification : http://dimensionalrift.homelinux.net/combuster/vdisk/sfs.html
. `dirname $0`/../inclusions/math.sh
. `dirname $0`/../inclusions/date.sh
. `dirname $0`/../inclusions/dev.sh
@SuzanneSoy
SuzanneSoy / gist:655868
Created October 30, 2010 23:29
Print for cyclic structures
(defun print-env-stack (env-stack)
(let ((*print-circle* t))
(if (atom env-stack)
nil
(progn (format t "~&~a: " (caar env-stack))
(mapcar (lambda (b) (format t "~& ~w = ~w" (car b) (cdr b)))
(cdar env-stack))
(print-env-stack (cdr env-stack))))))
@SuzanneSoy
SuzanneSoy / gist:658620
Created November 1, 2010 18:04
macro let*
(defmacro let* (bindings &rest body)
(if (endp bindings)
body
`(let (,(car bindings))
(let* ,(cdr bindings)
,body))))
(defun make-stat-env (params &optional env (position 1) num-env)
(unless num-env (setq num-env (+ (or (second (first env)) -1) 1)))
(cond ((endp params)
env)
((eq '&optional (car params))
`((,(cadr params) ,num-env ,position)
(,(intern (format nil "~a-P" (cadr params))) ,num-env ,(+ 1 position))
. ,(make-stat-env (cddr params) env (+ 2 position) num-env)))
((eq '&rest (car params))
(make-stat-env (cdr params) env position num-env))
(defun readfile (name)
(let ((fd (open name)))
(prog1
(cons 'progn
(loop
for line = (read fd nil 'eof)
while (not (eq line 'eof))
collect line))
(close fd))))
(defun map-meval (list env)
(mapcar (lambda (x) (meval x env)) list))
(defun meval-progn (list env)
(if (endp list)
nil
(if (endp (cdr list))
(meval (car list) env)
(progn
(meval (car list) env)
@SuzanneSoy
SuzanneSoy / gist:738228
Created December 12, 2010 18:26
Graphe qui bug.
6---------->7
^ |
| |
4-------+ |
^ | |
| v v
0-->3-->2-->8<--1
| ^
v |
5-------+
@SuzanneSoy
SuzanneSoy / git-knowlege
Created February 12, 2011 23:49
My knowlege about git.
## Généralités
# Créer un dépôt
git init
# Prendre en compte des modifs / découvrir un fichier
git add fichier
# Prendre en compte seulement une partie des modifs
git add -p fichier
// Without add - 60 instructions instead of 59, and I'd swear it was 58 before I started fiddling with that stuff.
/**
* MaterialTemplate.usf: Filled in by FHLSLMaterialTranslator::GetMaterialShaderCode for each material being compiled.
* Copyright 1998-2012 Epic Games, Inc. All Rights Reserved.
*/
/*
Defined by the C++ code:
@SuzanneSoy
SuzanneSoy / 20 ans TOS
Last active December 17, 2015 05:19 — forked from anonymous/20 ans TOS
Le Chevalier Cendres
Lloyd, c'est un nom du passé, le nom donné par une femme à qui il ne parlait qu'à travers une tombe, nom donné par un père exilé après avoir été mis au supplice du pesant fardeau d'un trop grand nombres d'années, et maintenant de la solitude. Le Chevalier des Cendres ne la connaît point la solitude, et pourtant, il se sent bien peu entouré. Toujours guidé, accompagné, dirigé, demandé par son gardien Yuan, lui-même au service de Martel, le chevalier n'a jamais cessé d'avoir quelqu'un auprès de lui. Yuan la plupart du temps, certes, mais quand ce n'est pas lui, c'est un jeune orphelin, une femme pleine de vengeance, un roi par lequel il se sent trahi, une créature non dotée de parole, un fantôme qui cherche sa lumière, une fillette condamnée, un animal battu, non, le chevalier n'est jamais seul, il y a TOUJOURS quelqu'un pour lui demander quelque chose, toujours une requête, une exigence ou une quête à assouvir, mais pour lui… personne. Il est là pour tous, il essaie d'être disponible à to