看别人吵架,捡了个强大的IDE
俺今晚闲着没事上网找地方看热闹,逛了几个国内的论坛没有发现有价值的口水战,就跑国外讨论组找去了,然后就捡了个使用ICC做后台的IDE,据Intel的人吹牛说ICC编译的程序是IA平台下最快的程序,CPU都是他们家做的,估计优化差不了,今天看到有好的IDE就下载了,发现IDE集成了不少强大的工具,还有好些有用的库,如正则表达式解析,垃圾回收,内存数据压缩和解压,甚至连TC提供的屏幕操作函数都实现了,真是BT。这是主页:
http://www.cs.virginia.edu/~lcc-win32/
下载页:
http://www.q-software-solutions.de/downloaders/show_download_locations
IDE的作者是virginia大学cs系的jacob navia,提供了Icc-win32和Icc-linux32两个版本,两个的安装包都很小只有6M和2M。
闲着没事可以听我说说这场口水战,jacob navia在讨论组里发主题介绍一本关于C中溢出问题的有趣的书,walter Roberson改名叫water更合适,上来就喷了jacob一脸口水,walter说溢出不属于C属于算法和C的实现,jacob不该在讨论C的地方发这种东西跑题了:
>Buffer overflows are a fact of life, and, more specifically, a fact of
>C.
>All is not lost however. In the book
>"Value Range Analysis of C programs" Axel Simon tries to establish a
>theoretical framework for analyzing C programs.
If buffer overflows are indeed, as you claim, "a fact of C", then
no amount of theoretical analysis will allow you to eliminate them
in any actual C program.
On the other hand:
int main(void) { return 0; }
is a C program that has no possibility of buffer overflow. The
existance of a single counter-example is enough to disprove your
claim that buffer overflows are "a fact of C".
There may be constructs in C that are -prone- to buffer overflows
when used by typical programmers, but that doesn't establish
that buffer overflows are "a fact of C". Therefor, any analysis
such as the book you refer to is not a book about C, but rather
a book about algorithms and about C implementations. That
makes it relevant for comp.programming and to newsgroups dealing
with the specifics of implementations similar to the ones s/he
discusses, but does not make the book relevant to comp.lang.c .
-----------------------------------------------------------------------------------
jacob也不是省油的灯,马上还击了:
Walter Roberson wrote:
> In article <g65acc$42...@, jacob navia <ja...@ wrote:
>> Buffer overflows are a fact of life, and, more specifically, a fact of
>> C.
>> All is not lost however. In the book
>> "Value Range Analysis of C programs" Axel Simon tries to establish a
>> theoretical framework for analyzing C programs.
> If buffer overflows are indeed, as you claim, "a fact of C", then
> no amount of theoretical analysis will allow you to eliminate them
> in any actual C program.
Well, happily for C, that is not true. What the author proposes is to
apply mathematical reasoning to the sets of values a variable in C can
have, and then, to reason mathematically about those sets. It uses
geometrical concepts like "lattices", and other mathematical
"software" to determine possible values. It is too early for me to
tell you exactly how he does it, I received the book today.
> On the other hand:
> int main(void) { return 0; }
> is a C program that has no possibility of buffer overflow. The
> existance of a single counter-example is enough to disprove your
> claim that buffer overflows are "a fact of C".
What is the point of that triviality?
Always the same. You take some sentence in my message, take it out
of its context, then find a single "counterexample", and then
that was it.
> There may be constructs in C that are -prone- to buffer overflows
> when used by typical programmers, but that doesn't establish
> that buffer overflows are "a fact of C".
There may be constructs yes. There "may" be constructs that are prone
to buffer overflows when used by typical programmers. Blame the
programmers that are typical, not the geniuses that live in
COMP.LANG.C
where they are a dime a dozen.
> Therefor, any analysis
> such as the book you refer to is not a book about C, but rather
> a book about algorithms and about C implementations.
Yes, algorithms surely. C implementations surely. It is not
an abstract book. Obviously for some people in this group
C stops at anything concrete that goes beyond the usual
void main(void) is not correct
i= i++ + ++i; is not correct.
and discussing forever homework issues.
> That
> makes it relevant for comp.programming and to newsgroups dealing
> with the specifics of implementations similar to the ones s/he
> discusses, but does not make the book relevant to comp.lang.c .
OFF TOPIC. !!!
A book about analysis of C programs is OBVIOUSLY
OFF TOPIC in comp.lang.c
The only on topic stuff is a sterile repeating of such important
stuff like
void main(void) is not correct
i= i++ + ++i; is not correct.
and discussing forever homework issues.
This people are just against ANY discussion.
-----------------------------------------------------------------------------------
这场口水仗还在继续,从今天凌晨2:53开始到现在,我再去看看战况如何