changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > org > docs / core/man.org

changeset 48: 9f2e9e647333
child: 1661d499c262
author: Richard Westhaver <ellis@rwest.io>
date: Sat, 07 Sep 2024 22:34:47 -0400
permissions: -rw-r--r--
description: core documentation and stats
1 #+title: Core User Manual
2 #+author: Richard Westhaver
3 #+email: ellis@rwest.io
4 #+property: header-args :dir ~/comp/core/
5 #+setupfile: ../../clean.theme
6 #+texinfo_filename: core.info
7 #+texinfo_dir_category: Software development
8 #+texinfo_dir_title: Core: (core)
9 #+texinfo_dir_desc: CC Software Development Ecosystem
10 This manual documents the [[comp:][CC]] [[vc:core][core]] software. The core is a
11 multi-language library and framework used to build advanced
12 applications. It is composed of language-specific collections of
13 interconnected libraries providing an exceptionally powerful
14 development ecosystem.
15 
16 * Introduction
17 :PROPERTIES:
18 :ID: 156ffb70-9e00-4532-be47-b921c1825a91
19 :END:
20 Welcome to the core, the software development ecosystem of [[comp:][CC]].
21 
22 The idea of a =core= is probably one that you are quite familiar with
23 as a developer of software. It implies something that is fundamental;
24 the 'machine behind the machine', whatever the machine may be.
25 
26 The =core= is often the most important part of your application - the
27 one you want to get right. Where things get tricky is when you have
28 many different applications, all which have a =core=, which you
29 need to get right to avoid embarassment.
30 
31 The natural evolution is to start abstracting away the commonalities
32 between your application core, refactoring them into a new project. As
33 your applications grow, you keep searching for common patterns and
34 refactoring. The circle of life goes on.
35 
36 This is *not* how the CC core is developed. Our core does not inherit
37 from applications. It is not a 'top-down' system. Instead, it is built
38 'bottom-up' from scratch and kept insulated (but not completely
39 isolated) from applications.
40 
41 This design decision is rooted in a philosophy which favors the
42 developer, or more specifically the /hacker/ over all other
43 stake-holders in our systems.
44 
45 * Overview
46 :PROPERTIES:
47 :ID: ceb67759-c656-411d-a0c0-df19b18732e5
48 :END: