The Open C++ Libraries.org Rationale

Published March 5, 2026

Design Rationale:

OCL is a modular set of libraries, all of which must be based on OCL.Core.

As we want to guarantee a base framework for the libraries to understand each other.

Examples of OCL:

You may find more examples of OCL's usage on https://git.nekernel.org.

/*
 * File: example.cpp
 * Purpose: Rope example.
 * Author: Amlal El Mahrouss (amlal@nekernel.org)
 * Copyright 2025-2026, Amlal El Mahrouss, licensed under the Boost Software License.
 */

#include <ocl/tproc/rope.hpp>
#include <iostream>
#include <memory>

#ifndef STANDALONE
using namespace ocl;
#else
using namespace boost;
#endif

int main()
{
	auto rope	  = tproc::crope("The Quick Brown Fox Jumps Over The Lazy Dog");
	auto new_elem = std::make_unique<tproc::crope>(", and Jumps again.");

	rope.concat(new_elem.get());

	std::cout << *++rope << std::endl;
}

You realize that OCL's objective is to be as close as possible to the C++ SL. And that's because it's much needed for code-bases to be closer to their SL than let's way adopting other practices that is quite compatible with it.

What's next?

Next we're going to discuss more about other system design rationales. And possibly some papers I wrote (and still writing).