%eclent; ]> Symbols and compilation
C Reference ecl_make_keyword Find a lisp keyword Function cl_object ecl_make_keyword char * name Description Many Lisp functions take keyword arguments. When invoking a function with keyword arguments we need keywords, which are a kind of symbols that live in the KEYWORD package. This function does the task of finding or creating those keywords from C strings. It is usually safe to store the resulting pointer, because keywords are always referenced by their package and will not be garbage collected (unless of course, you decide to delete it). Remember that the case of the string is significant. ecl_make_keyword("TO") with return :TO, while ecl_make_keyword("to") returns a completely different keywod, :|to|. In short, you usually want to use uppercase. Example The following example converts a section of a string to uppercase characters: cl_object start = ecl_make_keyword("START"); cl_object end = ecl_make_keyword("END"); ... sup = cl_string_upcase(4, s, start, ecl_make_fixnum(2), end, ecl_make_fixnum(6)); ... ecl_make_symbol Find a lisp symbol Function cl_object ecl_make_symbol const char * name const char * package_name Description This function finds or create a symbol in the given package. First of all, it tries to find the package named by package_name. If it does not exist, an error is signaled. Then, a symbol with the suppled name is searched in the given package. If the symbol exists, it is returned. If it does not exist, using INTERN. ANSI Dictionary &ANSI-C-Dict; Lisp symbol C function boundp cl_object cl_boundp(cl_object symbolp) copy-symbol cl_object cl_copy_symbol(cl_narg narg, cl_object symbol, ...) get cl_object cl_get(cl_object symbol, cl_object indicator) gensym cl_object cl_gensym(cl_narg narg, ...) gentemp cl_object cl_gentemp(cl_narg narg, ...) keywordp cl_object cl_keywordp(cl_object object) make-symbol cl_object cl_make_symbol(cl_object name) makunbound cl_object cl_makunbound(cl_object makunbound) remprop cl_object cl_remprop(cl_object symbol, cl_object indicator) set cl_object cl_set(cl_object symbol, cl_object value) symbolp cl_object cl_symbolp(cl_object object) symbol-function cl_object cl_symbol_function(cl_object symbol) symbol-name cl_object cl_symbol_name(cl_object symbol) symbol-package cl_object cl_symbol_package(cl_object symbol) symbol-plist cl_object cl_symbol_plist(cl_object symbol) symbol-value cl_object cl_symbol_value(cl_object symbol) Description