The Skycoin CX Libraries

Making CX even more powerful, flexible and efficient

CX is Skycoin’s comprehensive, Turing-complete, deterministic general programming language. And it runs on the fast, zero-fee, infinitely scalable Skycoin Fiber blockchain platform.

One of the features that makes CX so powerful is its growing assortment of libraries. A library is a collection of pre-written code that can be called upon by software developers to provide frequently needed functionality.

A distinguishing feature of software libraries is that they’re designed to be reused by multiple independent programs, with the developers only needing to learn about the interface to the library, and not its internal details.

Libraries allow programmers to focus on creative design, rather than typing out monotonous code to deliver basic functionality every time they begin a new project.

So what libraries does CX include? These are some of the main ones.

1. CXO Immutable Objects System

The CXO immutable objects system is a secure, distributed, peer-to-peer data storage and file-sharing solution.

CXO supports ECDH encryption, immutable tree structures, public/private key storage, address generation and signature verification. It also includes standard libraries for communication, messaging and data serialization.

CXO is ideal for CDNs (Content Delivery Networks), because rather than traversing long distances, data is delivered from the closest source to the requestor, saving network bandwidth and reducing latency. Inter-Planetary File Systems (IPFS) can be built on top of CXO.

CXO will be used to create decentralized versions of Wikipedia, Dropbox, BitTorrent, GitHub, Telegram, Twitter, Reddit, Facebook and other social networks. In fact, the Skycoin BBS already makes extensive use of CXO, and delivers similar functionality to some of these popular social media platforms.

The Skycoin BBS, built on CXO

2. CXM Math Library

Mathematics is a critical component of most games and applications.

The CXM Math Library will provide core functionality in fields such as statistics, algebra, graphing, data visualization, vector and matrix math, symbolic math, Fourier analysis, random number generation, and physics simulations.

CXM greatly expands the potential scope of CX applications. It includes a fast single-precision library as well as a stringent double-precision library, giving developers the flexibility to make their programs faster and simpler.

CXM will provide functionality for the computation and visualization of complex physics simulations

3. CXFX Graphics/Gaming Engine

The CXFX graphics engine is designed to help streamline video game development, allowing programmers to focus on their creative vision, rather than having to code the graphics from scratch every time.

CXFX already provides support for bump mapping, emissive mapping, occlusion mapping, and articulated animation playback. The ultimate goal is to have a WYSIWYG game editor similar to Unity or Unreal Engine.

Skycoin is now the only blockchain platform with an integrated graphics engine, capable of the stunning real-time 3D imagery depicted below (and these are just early trials).

SKycoin CXFX Graphics/Gaming Engine

4. OpenGL and GLFW

OpenGL is an API for rendering 2D and 3D vector graphics. GLFW is a multi-platform library for OpenGL. You’ve probably already seen games and apps built with OpenGL, as the library is used in a wide variety of applications, from virtual reality programs to 3D smartphone games.

OpenGL provides functionality such as drawing polygons, assigning colors to shapes, applying textures to polygons, zooming in and out, rotating objects, managing lighting effects, and creating atmosphere with smoke, haze or fog.

By using OpenGL, Skycoin CX developers can use the same code to render graphics on a PC, Mac, or mobile device. Nearly all modern operating systems support OpenGL, and many graphics cards are optimized for OpenGL, making it an easy choice for graphics development.

Summary

Libraries might sound boring, but the growing range of CX libraries will help to make Skycoin’s revolutionary blockchain programming language even more powerful, robust, flexible and efficient.

Libraries make it easier for CX developers to concentrate on the creative design aspect of their individual projects, without having to waste energy reinventing the wheel every time.

Skycoin has also recently announced the debut of its CX Labs Project, which gives everyone the opportunity to build decentralized applications using CX, and also to be financially rewarded for those efforts.

So if you’d like to learn more about CX, then simply join one (or all) of the CX discussion groups on Telegram listed below.