cvm

0

Описание

Стандартная библиотека типов совместимая с C(С89, С99) и виртуальная машина предоставления API безопасного к типам данных на С. (библиотека служит оберткой для поддержки на С языка Go, используя управление памятью и абстракции типов и исключающей работу с указателями напрямую, может использоваться со сторонними менеджерами памяти)

Языки

  • C67,9%
  • Shell28,5%
  • CMake2,7%
  • Dockerfile0,8%
  • C++0,1%
3 года назад
2 года назад
3 года назад
3 года назад
3 года назад
2 года назад
README.md

c project description

status

C/C++ CI Coverage Status

description

  • C memory management

inspiration

vision

  • managed (C programming language model)
  • safe
  • friendly
  • extensibe
  • simple
  • tested (100% code coverage)

brief

  • VM managed types / C API

  • user defined types / extensibility system

    1. C API
    2. memory management
    3. garbage collection
  • development environment:

    1. WSL2/devcontainers
    2. Ubuntu 22.04.3 LTS
  • C API generated docs (doxygen):

    1. docs

logo

music credits

updates

  • 2023

    1. added v1 core Virtual Machine (vm1) with types:

    2. added support including:

      1. file IO
      2. string manupulation methods
      3. search

features

  • List<T>
    implementations
  • code coverage
  • coverage hot-reload
  • memory allocation playground
  • automatic garbage collection implementation (GC)
  • GTK GUI app demo ready to run on containerized environment

readme

repo is ready to run on containers, WSL, remote hosts.

remote development

  • installation from git repo (manually)

Installs sources from git repo

clang

docs

containers

manual installation (minimal install)

  • init

Sets up primary/optional tools and git hooks

  • rexo

GTK GUI app development

setup

  • add/update Visual Studio Code environment settings:
  • run command line build

shell scripting documentation

all shell scripts

  • are self-documented
  • placed in ./bin folders
  • detects execution as user or root (sudo)
  • runs with required and optional command-line parameters

history

local repos

Use CLI or git.

support C project

sponsorship

support this project become a sponsor

img

2023

  • added support for classes / inheritance (oberon exaple)
  • added GC implementation
  • added several list implementations

2022

  • playing around with visibility in class declarations

documentation

initialization

doxygen generated documentation

C API PDF(refman.pdf)

referential documentation

resources

requirements

SAST Tools

PVS-Studio - static analyzer for C, C++, C#, and Java code.