On 8 Jun., 14:21, Sergey Bochkanov <sergey.bochka...@alglib.net>
wrote:
> Hello, SAGE developers!
>
> I  have a question about C standard which SAGE packages should conform
> to.  Is  it  C99?  Plain  ANSI  C?  "Modern ANSI C", i.e. ANSI C which
> borrowed several features from C99?

I think you should *either* use ANSI C89, ISO C90 (almost identical)
*or* ISO C99 (but not non-standardized mixtures).

It should be pretty ok to use ISO C99 ("-std=c99") because parts of
the Sage library already require it.
(Note that gcc nevertheless adds some GNU features if this is
specified, but that doesn't mean you should use them.)


> I  am  working  on Python<=>ALGLIB interface with intention to make it
> usable  from  SAGE.  It  is  Python  interface  to the pure C package,
> created using CTYPES. I.e. C part of this interface is not C extension
> to Python package, it is totally separate shared library which is used
> through CTYPES foreign  function library.
>
> Python-C  interface  generator  is  ready,  now  I  work  in automatic
> generation  of  C code. One week, I think, and it will be ready. But I
> can't decide what C standard to choose.
>
> As  for  me,  I'd  like  to  use  ANSI C with several widely supported
> features  from  C99 - inline functions, "//" comments, maybe something
> else.  But this thing should be compiled for SAGE, so I don't know can
> I use something beyond ANSI C or not.

See above. I'd strongly discourage the use of "some" new features in
conjunction with an otherwise old standard (though there are currently
parts in Sage that violate this - IMHO to be fixed).


> There  is  no information on this subject at the SAGE Developer Guide,
> so I am asking this question here.

Yes, there should be some comments on this.


Just my opinion. I'd also personally prefer ISO C99 because it is
likely to be more portable (and nowadays should be supported on all
platforms...).

-Leif


> With best regards,
>  Sergey                          mailto:sergey.bochka...@alglib.net

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to