Quand l'obfuscation devient un art : l'ensemble de Mandelbrot

Magazine
Marque
Contenu Premium
Domaines


Résumé

J'ai déjà parlé d'obfuscation [1], mais il s'agissait alors d'obscurcir l'un de nos programmes. Je vous propose ici une vision plus artistique en décortiquant un code Python très intéressant générant une image de l'ensemble de Mandelbrot.


Tout le monde a déjà vu des codes issus de l'IOCC (International Obfuscated C Code Contest), a minima dans un article de GNU/Linux Magazine [2], ou plus anciennement avec le « coin du vieux barbu » traitant de codes obscurcis dans un sens plus large [3-10]. Ces codes sont impressionnants, car ils produisent un résultat, mais en plus leur code même représente une image en ASCII Art. Seulement ces entrées sont codées en C (comme le nom du concours pouvait le laisser supposer…). Voyons s'il est possible de faire la même chose en Python qui est pourtant un langage bâti pour rendre obligatoire l'écriture d'un code le plus lisible possible.

1. Au début était le lambda-calcul

Tout code peut être écrit sous la forme de fonctions anonymes ou lambda functions. Tirant leur nom du lambda-calcul, ces fonctions s'écrivent sur une ligne en listant les variables après le mot-clé lambda. Prenons l'exemple d'une fonction de somme sum() :

def sum(val_1:int, val_2:int) ->...
Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Utiliser Visual Studio Code pour coder en Python

Magazine
Marque
GNU/Linux Magazine
Numéro
243
Mois de parution
décembre 2020
Domaines
Résumé

Comme Batman a Robin, Rocket Raccoon a Groot, le développeur a l’éditeur de code. Sans son plus fidèle acolyte, impossible d’écrire la moindre ligne de code... d’où l’importance d’être toujours à la recherche de l’outil le plus efficace qui soit, quitte à délaisser un vieux compagnon de route...

Générez la documentation technique de vos projets Godot

Magazine
Marque
GNU/Linux Magazine
Numéro
243
Mois de parution
décembre 2020
Domaines
Résumé

Découvrons comment utiliser GDScript Docs Maker pour générer automatiquement la documentation de vos projets Godot. Nous allons voir dans cet article que l’on peut simplement, à partir de notre code et de ses commentaires, avoir une documentation toujours à jour.

Implémentation du calcul symbolique et de la dérivation en Java

Magazine
Marque
GNU/Linux Magazine
Numéro
243
Mois de parution
décembre 2020
Domaines
Résumé

Les logiciels de calcul symbolique sont relativement abondants. Pour les curieux ou ceux qui voudraient intégrer ce type de fonctionnalités dans leurs propres programmes, nous allons essayer de lever une partie des mystères des théories et des problèmes qui se cachent derrière la création de ces systèmes.

Déboguez vos codes PHP

Magazine
Marque
GNU/Linux Magazine
Numéro
243
Mois de parution
décembre 2020
Domaines
Résumé

La mise au point de programmes PHP est parfois perçue comme archaïque, car la configuration d’un environnement efficace de debugging peut s’avérer déroutante. Voici comment paramétrer une confortable installation pour profiter pleinement d’outils professionnels et maîtriser le développement local ou distant.