[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
guile/guile-core HACKING
From: |
Marius Vollmer |
Subject: |
guile/guile-core HACKING |
Date: |
Thu, 14 Jun 2001 13:47:05 -0700 |
CVSROOT: /cvs
Module name: guile
Changes by: Marius Vollmer <address@hidden> 01/06/14 13:47:05
Modified files:
guile-core : HACKING
Log message:
Stuff about our naming conventions.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/HACKING.diff?cvsroot=OldCVS&tr1=1.46&tr2=1.47&r1=text&r2=text
Patches:
Index: guile/guile-core/HACKING
diff -u guile/guile-core/HACKING:1.46 guile/guile-core/HACKING:1.47
--- guile/guile-core/HACKING:1.46 Sat Jun 2 18:05:27 2001
+++ guile/guile-core/HACKING Thu Jun 14 13:47:05 2001
@@ -292,6 +292,35 @@
them in THANKS.
+- Naming conventions. We use certain naming conventions to structure
+ the considerable number of global identifiers. All identifiers
+ should be either all lower case or all upper case. Syllables are
+ separated by underscaores `_'. All non-static identifiers should
+ start with scm_ or SCM_. Then might follow zero or more one letter
+ syllables giving the category of the identifier. The currently used
+ category identifiers are
+
+ t - type name
+
+ c,C - something with a interface suited for C use. This is used
+ to name functions that behave like Scheme primitives but
+ have a more C friendly calling convention.
+
+ i,I - internal to libguile. It is global, but not considered part
+ of the libguile API.
+
+ f - a SCM variable pointing to a Scheme function object.
+
+ F - a bit mask for a flag.
+
+ m - a macro transformer procedure
+
+ n,N - a count of something
+
+ s - a constant C string
+
+
+
Helpful hints ========================================================
- [From Mikael Djurfeldt] When working on the Guile internals, it is