Articles

(Mar 19) #systems-programming

It's time to demystify all the container jargon you've been hearing and not completely understanding. Sascha Grunert has started a multi-part series that goes through all the layers of abstractions that are involved in the container architecture. In this first article we take a look at the very bottom: the kernel.

(Mar 14) #cpp

Currently, many C++ implementations use malloc/free to allocate memory (even though this is not specified in the C++ standard). Well, in C++20, a new Allocator model is planned to be included. Currently experimental, this new model will allow programmers to their own memory management strategy. In this article, Glennan Carnie shows us how to go about implementing one as well as explaining all the concepts around it.

(Mar 18) #ruby

Ruby 2.7 will introduce a new somewhat controversial feature (that even Matz, the creator of Ruby, isn't very comfortable with): Numbered Parameters. As some reader put it, it's the equivalent of arg[0] in a method signature like def my_function(*args) . In this article Brandon Weaver goes into the details of what this brings to the table.

(Mar 22) #algorithms

Binary Search is a searching algorithm on an already sorted list that splits the list in the middle and then discards either the left smaller values or right larger based on the search value. This goes on until the value is found. But what if, instead of splitting right in the middle, we were a little more intelligent on where we do the splitting? Alan Wolfe experimented with what is apparently called "interpolation search" and in this article provides an overview as well as a ton of performance measurements.

Programming language of the day: The Lobster Programming Language (2013). "Lobster is a game programming language. Unlike other game making systems that focus on an engine/editor that happens to be able to call out to a scripting language, Lobster is a general purpose stand-alone programming language that comes with a built-in library suitable for making games and other graphical things. It is therefore not very suitable for non-programmers.

It’s also meant to be portable (mostly courtesy of OpenGL/SDL/Freetype), allowing your games to be run on Windows, Mac OS X, iOS, Linux, Android and WebAssembly (in that order of maturity, currently)."

And that''s it for today! Discuss this issue at our subreddit r/morningcupofcoding.

Did you like what you read? Let us know by clicking one of the links below.

Liked - Disliked

I hope you enjoyed reading the latest issue of Morning Cup of Coding. If you did, consider supporting us by becoming a patron (Patreon) for perks like ad-free issues, or via a one-time donation via PayPal.

Cheers,

Pek