Hi.
Type-C is out, and it is AWESOME!
2024-11-19Type-C has been announced to the public! And it rocks! In this post, we will dive into some of its features and how they work under the hood.
Notarizing Electron App in 2024
2024-07-17Most of cases, I would just write about things that are more less unique, or topics i am really passionate about. But given the messy state (IMO) of electron and its eco-system as well the complexity of code signing and notarization, I thought it would be a good idea to write about it, and save some people some time (hopefully)
In depth Look at Generics Implementation in Type-C
2024-03-20Given the new development of Type-C, I have decided to share my experience with implementing generics in my language. Lovely feature but damn hard to nail! This article will cover the current implementation of generics in Type-C and some of the challenges related to it.
Closures Implementation in Type-V
2024-03-18Given the recent progress in the Type-V project, I have been working on implementing closures in Type-V, in a way that is non-intruisive to the current bytecode and least possible overhead. This article will cover the current implementation of closures in Type-V.
Type-C: Type System
2023-12-24The name Type-C, actually comes from two things. The first is the fact that it is a statically typed language and rich in terms of data types, the second is C, the language that inspired it. In this post, I will be talking about the various data types that type-c supports. Some interesting types are intentionally left out, such as `variant`, `string`, `array` and `process`. These will be addressed in a separate post. Hence in this post we focus on: Basic Types, Enums, Structs, Interfaces, Classes, Joins, Nullables and Functions. We finalize by looking into the strict type modifier.
Type-C Dev Post 1
2023-12-22In a new series of blog post, I highlight the current status of type-c and the type-v VM. Since I am posting on an infrequent basis, expect the order of these posts to be chaotic.
Have you heard of Bloom Filters?
2023-12-16Bloom filter, a fancy name for a a very simple algorithm. We will have a look at bloom filters, how they work, and how to use them. Also, look at an efficient C implementation of bloom filter.
Introducing Type-C
2023-12-08A sneak-peek into Type-C, a new programming language I am working on.
Demystifying the math and implementation of Convolutions: Part III.
2019-04-03In this part, we will discuss how to implement convolutions over 3D matrices, such as RGB images. We will also discuss how to optimize the code using im2col and vectorization.
Demystifying the math and implementation of Convolutions: Part II.
2019-03-31Part 2 of the series, we will discuss how to improve the performance of our convolution implementation using vectorization and matrix multiplication.
The magic behind ndarray
2019-03-29NDArray; or N-Dimensional Array is the core data structure for most deep learning frameworks. It is a data structure that is able to hold a large amount of data in a single object, and it is highly optimized for matrix operations. In this post, we will discuss the basics of NDArray, how to create them, how to perform basic operations on them and how to use them to perform matrix operations.
Demystifying the math and implementation of Convolutions: Part I.
2019-03-26A deep dive into convolutions, how they work and how to implement them in python.