Tag: C++

std::is_scoped_enum<>

Written by on August 13, 2023 in C++, Programming with 0 Comments
std::is_scoped_enum<>

The type trait “std::is_scoped_enum<T>::value” was introduced in C++23 to check whether the type “T” is a scoped enum type. Another way to use this is std::is_scoped_enum_v<T>. Before getting into this trait in detail, let us briefly recap the differences between unscoped and scoped enums. Unscoped Enums Unscoped enums are the old-style enums. Look at the […]

Continue Reading

Std::tie

Written by on December 25, 2022 in C++, Programming with 0 Comments
Std::tie

std::tuple is a widely used abstraction in C++ and has been around since C++11. It is a generalization of std::pair. std::tie is convenient when we want to create a tuple of lvalue references to existing variables. It is a function template commonly used to unpack a tuple into individual objects. In the above example, we […]

Continue Reading

Why Learn C++

Written by on November 7, 2022 in C++, Programming with 0 Comments

This is the third and the last article in the series “Why Learn Language-XYZ?”. I talked about Prolog and Lisp earlier. The present article is on C++. Once you have gained reasonable proficiency with Prolog and Lisp, you are ready to learn C++! In my view, C++ is a complex language and requires sufficient maturity […]

Continue Reading

Book Review: Embracing Modern C++ Safely

Written by on September 18, 2022 in Book Review, C++ with 0 Comments
Book Review: Embracing Modern C++ Safely

Title: Embracing Modern C++ Safely Authors: John Laos, Vittorio Romeo, Rostislav Khlebnikov, and Alisdair Meredith Publisher: Pearson Education, Inc. Year: 2022 C++ is a complex language. Fortunately, we have several good books (and other online material) for programmers at various levels. A few weeks ago, I had reviewed and recommended “Beautiful C++”, book suitable for […]

Continue Reading

Using DLL Functions in Rust

Written by on May 4, 2022 in C++, Programming, Rust with 1 Comment
Using DLL Functions in Rust

When you program in Rust, especially in a non-trivial project, there is a good chance that you will need to call “external” functions (usually, C/C++) that are available in a DLL (we are talking about the Windows platform here). It could be because you wish to re-use some code that you have earlier written in […]

Continue Reading

Rust Trait vs. C++ Abstract Class

Written by on April 3, 2022 in C++, Programming, Rust with 0 Comments
Rust Trait vs. C++ Abstract Class

Traits in Rust are an amazing feature and contribute significantly to the expressive power of the language. For someone coming to Rust with a C++ background (like me), Traits appear to be quite similar to Abstract Classes in C++. Although they are similar, Traits have certain characteristics that set them apart. In this article, I […]

Continue Reading

First Encounter with the Ring Programming Language

Written by on August 7, 2021 in C++, Programming, Ring Language with 0 Comments
First Encounter with the Ring Programming Language

The Ring Programming Language, designed by Mahmoud Fayed,  has been around since 2016. I came to know of it quite accidentally two weeks ago when I received a promotional email from Apress about their book “Beginning Ring Programming” by Mansour Ayouni, published in 2020. I immediately did a google search about the language and finding […]

Continue Reading

Implementing iLexicon using LiteDB

Written by on March 28, 2021 in Natural Language Processing, Programming, Prolog with 0 Comments
Implementing iLexicon using LiteDB

iLexicon is an “intelligent” dictionary that can be used to build Natural Language applications. I have two implementations, one in Lisp and another in Prolog. Both implementations are memory-based, in order to speed up performance. I have written several articles referencing it, for example see this.   LiteDB is a NoSQL database for .NET. I […]

Continue Reading

Calling C# Methods from LispWorks Lisp – Part 2

Written by on March 14, 2021 in LISP, Programming with 0 Comments
Calling C# Methods from LispWorks Lisp – Part 2

In the last article, I showed how we can invoke C# methods from LispWorks Enterprise Edition, through the COM/Automation interface. That approach relied on invoking the Automation methods dynamically, without depending on the Type library (*.tlb).  In this article, I will discuss the other approach, which uses the Type library. According to LispWorks documentation, this […]

Continue Reading

LiteDB: A NoSQL Database for .NET

Written by on February 14, 2021 in Programming with 0 Comments
LiteDB: A NoSQL Database for .NET

I have been looking around for a compact embedded NoSQL database library for .NET, to use as the back-end of my “iLexicon” system. “iLexicon” is written in Lisp and Prolog (I have written a few articles on it before). At present, the entire dictionary component (containing over 300,000 word entries) is resident in memory, and the […]

Continue Reading

Top