[Ecls-list] Critical change

Dean O'Connor dean.oconnor at ite.com.au
Thu Jan 18 12:06:45 UTC 2007


juanjo

I know that our product at work had prefix "cl_" as its product prefix. 
eg. we had cl_init()

Perhaps it would be a good idea, to prefix *all* exported/global 
functions/vars with "ecl_" even if it means "ecl_cl_" and "ecl_clos_" etc.
A hassle perhaps, but then there's only 1 prefix (~namespace) to worry 
about.
Just a thought :)

cheers
deano

Juan Jose Garcia-Ripoll wrote:
> Hi,
>
> I have made some quick changes to ECL, adding prefixes to most
> functions that did not have them. So now, almost all functions in ECL
> begin with either ecl_, cl_, si_, clos_ or cmp_.  Some changes still
> to be made: rename some functions from cl_* to ecl_*, so that prefix
> cl_ is restricted to functions that belong in the COMMON-LISP package.
>
> I have checked almost all files. There might be some references still
> missing in the lisp->C compiler The symptom then would be that a file
> does not compile or does not link. Please report it.
>
> Hope this helps.
>
> Juanjo
>
>
> 2007/1/18, Juan Jose Garcia-Ripoll <jjgarcia at users.sourceforge.net>:
>   
>> 2007/1/16, Stanislaw Halik <sthalik+ecl at tehran.lain.pl>:
>>     
>>> After linking ECL with a certain C program, it crashes in cl_boot().
>>>
>>> Backtrace follows:
>>>
>>> (gdb) bt
>>> # 0  0xb79472de in ecl_find_package_nolock (name=0x0) at /tmp/ecl-cvs/ecl/build/ecl/object.h:639
>>> # 1  0xb7947425 in si_coerce_to_package (p=0x0) at /tmp/ecl-cvs/ecl/src/c/package.d:260
>>> # 2  0xb794854c in intern (name=0x8164300, p=0x0, intern_flag=0xbffb8164) at /tmp/ecl-cvs/ecl/src/c/package.d:303
>>>       
>> In the end it was _not_ a problem with the garbage collector, but a
>> name clash. The ECL library has a function called current_package()
>> and your code too.
>>     
>
>   




More information about the ecl-devel mailing list