Between 2017 and July 2021 I was an R&D software developer at Agilent Technologies (formerly Genohm).
In 2015 I obtained a bachelor's degree in computer science and a minor in mathematics from AUB. My bachelor's graduation project was to design and implement a quantum functional language.
I would eventually like to do a PhD, research, or teach programming languages techniques or mathematics. I discovered and self-taught myself how to program at the age of 14. I love to share what I learn with anyone interested.
I am an avid reader, my Goodreads profile lists all my non-technical interests (those outside of CS and math). I speak/read fluently three (natural) languages: English, French, and Arabic.
In my spare time, when I'm not reading or programming, I play Go, snooker, and the mandolin.
And in general anything "exotic".
I am proficient in many programming paradigms; functional, imperative, and object-oriented, with preference to functional languages. I mainly use Python for small applications, Bash for write-once-execute-once code, C and D for any heavy lifting, Octave for quick plotting and mathematical computations and Haskell for any type-theoretic experiments and programs that must be correct. I am proficient in these programming/scripting/markup languages:
My primary editor is Vim.
I live in the command line (with the help of tmux) most of the time.
This graph represents a 69-state machine, in fact, a
quantum Turing machine [PDF]. It's a machine that
abides by the laws of quantum mechanics. This machine can be thought of performing
the following algorithm on each superposition
|k,x⟩ in a 6-dimensional
x ∈ ℕ8 k ∈ ℕ8 while |x-k| < 4: x := x + 1 mod 8This machine is significant because it is the first QTM that exhibits conditional looping (I couldn't find any), and it sheds some light on the inverse of decidable programs (the inverse of a decidable program can be proven to be sometimes undecidable).