/ COMMENTS.org
COMMENTS.org
 1  # SPDX-FileCopyrightText: 2023-2024 Le'Sec Core collective
 2  #
 3  # SPDX-License-Identifier: LGPL-3.0-or-later
 4  
 5  * Why?
 6  
 7  I want to experiment, with a focus on clean APIs and functional uniformity
 8  as far as can be acheived, and use that to allow pluggability.
 9  
10  This set of libraries is intended for security services all their
11  underlying bits, keys, crypto algorithms, etc.
12  
13  * Why C?
14  
15  I've been asked why I chose C and not another language, possibly more
16  secure.
17  
18  A partial answer is that C is really simple in terms of what it can
19  interact with, including modules in other languages, but also in terms
20  of fluff that must be initialised whenever loading programs and
21  modules.
22  
23  A partial answer is that C lends itself well for the sort of dispatch
24  function that's one of the core ideas with this set of libraries, and
25  thereby for how the plugins are constructed.
26  
27  And...  a partial answer is habit...  I've been programming in C since
28  the mid 1980's, so it sits in my fingers.
29  
30  I've looked at other new languages (for example, I've looked at Rust,
31  Zig and Hare), and while they are indeed interesting, they haven't
32  given enough of an advantage to switch to, or their model is a
33  disadvantage.