Skip to content

Instantly share code, notes, and snippets.

Mathieu CAROFF mathieucaroff

  • IMT Atlantique
  • Brest
Block or report user

Report or block mathieucaroff

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View expandedLog.ts
var MAX_DEPTH = 20
export var expandedLog = (obj: Record<string, unknown>, depth: number = 0) => {
var [[name, item]] = Object.entries(obj)
if (depth < MAX_DEPTH && typeof item === 'object' && item) {
var typeString = Object.prototype.toString.call(item)
var objType = typeString.replace(/\[object (.*)\]/, '$1')
console.group(`${name}: ${objType}`)
Object.entries(item).forEach(([key, value]: any) => {
@mathieucaroff
mathieucaroff / git-setup-snippet.md
Created Jan 28, 2019
A copy-past of the default helper snippets shown on Gitlab in empty repositories (2019-01-28)
View git-setup-snippet.md

Command line instructions

Git global setup

git config --global user.name "Mathieu CAROFF"
git config --global user.email "mathieu.caroff@free.fr"

Create a new repository

@mathieucaroff
mathieucaroff / util_str.vhd
Created Nov 20, 2018
VHDL Utilitary functions to convert std_logic_vector(s) to strings
View util_str.vhd
-- Mathieu CAROFF
-- 2018-11-20
-- util_str.vhd
-- Utilitary functions to convert std_logic_vector(s) to strings
-- Test:
-- ```bash
-- ghdl -a util_str.vhd
-- ghdl -r util_str_tb
-- ```
@mathieucaroff
mathieucaroff / sequenceView.py
Created Nov 11, 2018
Create a (read only) slice without creating a copy of the given sequence.
View sequenceView.py
# stackoverflow.com/q/3485475/can-i-create-a-view-on-a-python-list
# This solution is based on python 3 range ability to be sliced and indexed
# in constant time.
#
# It supports slicing, equality comparsion, string casting, and reproducers,
# but doesn't support assigment (and I don't plan to add support for it).
#
# Creating a SliceableSequenceView of a SliceableSequenceView won't slow down
# access times as this case is detected.
@mathieucaroff
mathieucaroff / test-shell-default-variables.sh
Created Nov 6, 2018
Test shell variables to know how to determine path to the current shell script. Includes sample script output.
View test-shell-default-variables.sh
#!/bin/bash
# test-shell-default-variables.sh
# Usage examples (you might want to `sudo apt install zsh ksh`):
#
# ./test-shell-default-variables.sh dash bash
# ./test-shell-default-variables.sh dash bash zsh ksh
# ./test-shell-default-variables.sh dash bash zsh ksh | less -R
@mathieucaroff
mathieucaroff / text-circle.py
Created Oct 17, 2018
Fill a circle with 0s and 1s
View text-circle.py
#!/usr/bin/env python3
#
# Fill a circle with 0 and 1's
# The circle is made of half as many lines as it is made of columns.
# This way, it usually appears round (with most terminal fonts at least).
# Accept the circle's width-radius as argument. See the default radius r, below.
r = 15
from sys import argv
if len(argv) > 1:
View 36-aes128-output-examples.txt
key::::00000000000000000000000000000000
block::00000000000000000000000000000000
crypt::66e94bd4ef8a2c3b884cfa59ca342b2e
block::ffffffffffffffffffffffffffffffff
crypt::3f5b8cc9ea855a0afa7347d23e8d664e
block::0000000000000000ffffffffffffffff
crypt::747cb9267e59fa9e4e615668db0909bc
@mathieucaroff
mathieucaroff / download-buidl-and-install-ghdl.sh
Created Sep 28, 2018
Download build and install GHDL on Ubuntu 18.04 (tested 2018-09-28)
View download-buidl-and-install-ghdl.sh
#!/bin/sh
#
# download-buidl-and-install-ghdl.sh
#
# It took about 5 minutes on my laptop (2018-09-28).
sudo apt update
sudo apt install -y git make gnat zlib1g-dev
git clone https://github.com/ghdl/ghdl
cd ghdl
@mathieucaroff
mathieucaroff / collatz-tree.py
Created Sep 10, 2018
Collatz tree generator. Output as text or png (png requires graphviz). Produces regular binary collatz tree or trees without even numbers.
View collatz-tree.py
# Collatz tree generator. Output as text or png (png requires graphviz).
# Produces regular binary collatz tree or trees without even numbers.
#
# Note: The tree starts at 8 to avoid the 4-2-1 loop.
# Note': See the end of the file for two example text trees.
#
# Setup - on linux or wsl:
# ```shell
# sudo apt install python3-pip ipython3 graphviz
# sudo -H pip3 install anytree
@mathieucaroff
mathieucaroff / collatz-tree.md
Last active Sep 10, 2018
Tree for Collatz conjecture / Syracuse conjecture / Hailstone sequence. Output can be text or png (png requires graphviz). Can produce regular binary Collatz tree or Collatz-like trees without even numbers.
View collatz-tree.md

Collatz tree generator

Output can be text or png (png requires graphviz). Can produce regular binary Collatz tree or Collatz-like trees without even numbers.

  • Note: The trees start at 8 to avoid the 4-2-1 loop.
  • Note': See the end of the file for two example text trees.
  • Note": There is a .py version of this gist here: mathieucaroff/collatz-tree.py.

Setup for linux or wsl

You can’t perform that action at this time.