Activity
945 followers
Experience & Education
Projects
-
BashClass
- Present
See projectBashClass is a programming language supporting Object Oriented Programming, and compiles into BASH 4.4. Classes and members written in BashClass are converted into associative arrays with unique indices in the generated BASH script.
BashClass uses EasyCC-C++ library which provides the lexical and syntax analysis. The lexical and syntax analysis configuration files, located under the resources directory, serve as an input to EasyCC-C++ to parse the user files and validate it against a…BashClass is a programming language supporting Object Oriented Programming, and compiles into BASH 4.4. Classes and members written in BashClass are converted into associative arrays with unique indices in the generated BASH script.
BashClass uses EasyCC-C++ library which provides the lexical and syntax analysis. The lexical and syntax analysis configuration files, located under the resources directory, serve as an input to EasyCC-C++ to parse the user files and validate it against a grammar determining the language syntax. -
EasyCC C++
- Present
See projectEasyCC (or Easy Compiler Compiler) is a library implemented in C++ allowing users to create their own programming language. The library covers the lexical and syntax analysis phases, and provides a simple interface for the user to build the program semantics on top.
For further details about this library, check the github link attached. -
Magnetic Pendulum Simulator - McGill Physics Hackathon - 1st place
Physicists have always been fascinated by pendulums, and with good reason. They are very simple systems that can be easily understood, yet still have applications in almost all fields of physics. While they might be nothing more than a mass at the end of a string, modeling their movement has been used to solve many problems, from keeping time inside clocks to understanding quantum mechanics!
This all changes, however, when a magnet is applied at the end of such pendulums. Indeed, this…Physicists have always been fascinated by pendulums, and with good reason. They are very simple systems that can be easily understood, yet still have applications in almost all fields of physics. While they might be nothing more than a mass at the end of a string, modeling their movement has been used to solve many problems, from keeping time inside clocks to understanding quantum mechanics!
This all changes, however, when a magnet is applied at the end of such pendulums. Indeed, this transforms an object that is otherwise completely understood into a concrete example of the butterfly effect. This effect can be summarized as "small causes can have large consequences". This idea ties into a much broader and complex concept of mathematics: chaos theory.
This simulation features the physics behind a magnetic pendulum. Notice how modifying any setting or initial magnet location (even slightly) might result in changing the magnet over which the pendulum might end in an unpredictable manner. This is the butterfly effect! Try adding other magnets and changing the polarities to simulate the interesting motions of the pendulum.Other creatorsSee project -
CityGuru - AngelHack 2016 - 2nd place
CityGuru is a personalized concierge service, an application that aims to simplify the decision-making process for travellers. While there are numerous services available on the Internet that will give you all of the options for what to do next or what to eat next, CityGuru personalizes this process by connecting you in real-time with an expert you can trust.
Other creatorsSee project -
PM Expert - Project Management Application
o Created a multilingual, intuitive and simple project planning GUI for managers and project members
o Implemented the application's functionalities that include assigning members to activities and projects, set deadlines, and generate and analyze GANT and PERT charts.
o GUI developed in an iterative manner, with unit testing (JUnit), documentation and presentation of the application for each iteration
o Development environment: JAVA application, JAVA SWING GUI, SQLite DB
Other creatorsSee project -
GangiHo - Artificial Intelligence Game
Gangi Ho is an Artificial Intelligence Game that uses Minimax algorithm to decide the AI next move. The game is a 2 player game played on an N x N board. Multiple heuristics are used in order to evaluate game nodes, including counting the number of moves and finding patterns on the game board.
A graphical user interface is provided to facilitate the user interaction with the game and to visualize the AI computation processes and decisions.Other creatorsSee project -
A+ buddy (McHacks 2015)
-
Enigma machine simulator
See projectThe Enigma machine is a piece of spook hardware invented by a German and used by Britain's codebreakers as a way of deciphering German signals traffic during World War Two.
http://www.bbc.co.uk/history/topics/enigma
The Enigma machine simulator is implemented in Java.
Users can use the provided methods or a graphical user interface to configure the enigma machine.
Url: https://github.com/amirbawab/Enigma-machine-simulator -
Turing machine
See projectA Turing machine is a mathematical model of a hypothetical computing machine that can use a predefined set of rules to determine a result from a set of input variables.
Source code and detailed documentation with methods complexities are available at the following url: https://github.com/amirbawab/Turing-Machine -
Graph ADT
See projectJava implementation of Graph ADT with the adjacency list structure.
Source code and detailed documentation with methods complexities are available at the following url: https://github.com/amirbawab/GraphADT
Honors & Awards
-
The Computer Science Medal
Concordia University
Awarded to the highest ranking student graduating with a BCompSc degree.
-
Jaan Saber, Phoivos Ziogas Memorial Scholarship
Concordia University
-
Dean's list : Tier 1 - 2015 - 2016
Concordia University
-
Stelvio Software Engineering Excellence Scholarship
Concordia University
-
Dean's list : Tier 1 - 2014 - 2015
Concordia University
-
Concordia University Used Book Fair Scholarship
Concordia University
http://www.concordia.ca/cunews/offices/vpaer/aar/2016/09/30/new-life-for-old-reads.html
Languages
-
English
-
-
French
-
-
Arabic
-
Other similar profiles
Explore collaborative articles
We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.
Explore More