vaxocentrism
/
vak "
soh -
sen "
trizm / [
analogy with "
ethnocentrism "]
A notional
disease said to afflict C programmers who persist in coding
according to certain assumptions that are valid (
especially
under Unix )
on {
VAXen }
but false elsewhere .
Among these are :
1 .
The assumption that dereferencing a null pointer is safe
because it is all bits 0 ,
and location 0 is readable and 0 .
Problem :
this may instead cause an illegal -
address trap on
non -
VAXen ,
and even on VAXen under OSes other than BSD Unix .
Usually this is an implicit assumption of sloppy code
(
forgetting to check the pointer before using it ),
rather than
deliberate exploitation of a misfeature .
2 .
The assumption that characters are signed .
3 .
The assumption that a pointer to any one type can freely be
cast into a pointer to any other type .
A stronger form of
this is the assumption that all pointers are the same size and
format ,
which means you don '
t have to worry about getting the
casts or types correct in calls .
Problem :
this fails on
word -
oriented machines or others with multiple pointer
formats .
4 .
The assumption that the parameters of a routine are stored
in memory ,
on a stack ,
contiguously ,
and in strictly ascending
or descending order .
Problem :
this fails on many RISC
architectures .
5 .
The assumption that pointer and integer types are the same
size ,
and that pointers can be stuffed into integer variables
(
and vice -
versa )
and drawn back out without being truncated or
mangled .
Problem :
this fails on segmented architectures or
word -
oriented machines with funny pointer formats .
6 .
The assumption that a data type of any size may begin at
any byte address in memory (
for example ,
that you can freely
construct and dereference a pointer to a word -
or
greater -
sized object at an odd char address ).
Problem :
this
fails on many (
especially RISC )
architectures better optimised
for {
HLL }
execution speed ,
and can cause an illegal address
fault or bus error .
7 .
The (
related )
assumption that there is no padding at the
end of types and that in an array you can thus step right from
the last byte of a previous component to the first byte of the
next one .
This is not only machine -
but compiler -
dependent .
8 .
The assumption that memory address space is globally flat
and that the array reference "
foo [-
1 ]"
is necessarily valid .
Problem :
this fails at 0 ,
or other places on segment -
addressed
machines like Intel chips (
yes ,
segmentation is universally
considered a {
brain -
damaged }
way to design machines (
see
{
moby }),
but that is a separate issue ).
9 .
The assumption that objects can be arbitrarily large with
no special considerations .
Problem :
this fails on segmented
architectures and under non -
virtual -
addressing environments .
10 .
The assumption that the stack can be as large as memory .
Problem :
this fails on segmented architectures or almost
anything else without virtual addressing and a paged stack .
11 .
The assumption that bits and addressable units within an
object are ordered in the same way and that this order is a
constant of nature .
Problem :
this fails on {
big -
endian }
machines .
12 .
The assumption that it is meaningful to compare pointers
to different objects not located within the same array ,
or to
objects of different types .
Problem :
the former fails on
segmented architectures ,
the latter on word -
oriented machines
or others with multiple pointer formats .
13 .
The assumption that an "
int "
is 32 bits ,
or (
nearly
equivalently )
the assumption that "
sizeof (
int ) ==
sizeof (
long )".
Problem :
this fails on {
PDP -
11s }, {
Intel
80286 }-
based systems and even on {
Intel 80386 }
and {
Motorola
68000 }
systems under some compilers .
14 .
The assumption that "
argv []"
is writable .
Problem :
this
fails in many embedded -
systems C environments and even under a
few flavours of Unix .
Note that a programmer can validly be accused of vaxocentrism
even if he or she has never seen a VAX .
Some of these
assumptions (
especially 2 --
5 )
were valid on the {
PDP -
11 },
the
original {
C }
machine ,
and became endemic years before the VAX .
The terms "
vaxocentricity "
and "
all -
the -
world "
s -
a -
VAX
syndrome '
have been used synonymously .
[{
Jargon File }]
vaxocentrism : /
vak `
soh ·
sen ´
trizm /,
n . [
analogy with ‘
ethnocentrism ’]
A notional disease said to afflict C programmers who persist in coding according to certain assumptions that are valid (
esp .
under Unix )
on VAXen but false elsewhere .
Among these are :
The assumption that dereferencing a null pointer is safe because it is all bits 0 , and location 0 is readable and 0 . Problem : this may instead cause an illegal -address trap on non -VAXen , and even on VAXen under OSes other than BSD Unix . Usually this is an implicit assumption of sloppy code (forgetting to check the pointer before using it ), rather than deliberate exploitation of a misfeature . The assumption that characters are signed . The assumption that a pointer to any one type can freely be cast into a pointer to any other type . A stronger form of this is the assumption that all pointers are the same size and format , which means you don 't have to worry about getting the casts or types correct in calls . Problem : this fails on word -oriented machines or others with multiple pointer formats .The assumption that the parameters of a routine are stored in memory , on a stack , contiguously , and in strictly ascending or descending order . Problem :this fails on many RISC architectures . The assumption that pointer and integer types are the same size , and that pointers can be stuffed into integer variables (and vice -versa ) and drawn back out without being truncated or mangled . Problem : this fails on segmented architectures or word -oriented machines with funny pointer formats .The assumption that a data type of any size may begin at any byte address in memory (for example , that you can freely construct and dereference a pointer to a word - or greater -sized object at an odd char address ). Problem : this fails on many (esp . RISC ) architectures better optimized for HLL execution speed , and can cause an illegal address fault or bus error . The (related ) assumption that there is no padding at the end of types and that in an array you can thus step right from the last byte of a previous component to the first byte of the next one . This is not only machine - but compiler -dependent . The assumption that memory address space is globally flat and that the array reference foo [-1 ] is necessarily valid .Problem : this fails at 0 , or other places on segment -addressed machines like Intel chips (yes , segmentation is universally considered a brain -damaged way to design machines (see moby ), but that is a separate issue ).The assumption that objects can be arbitrarily large with no special considerations . Problem : this fails on segmented architectures and under non -virtual -addressing environments . The assumption that the stack can be as large as memory . Problem : this fails on segmented architectures or almost anything else without virtual addressing and a paged stack . The assumption that bits and addressable units within an object are ordered in the same way and that this order is a constant of nature . Problem : this fails on big -endian machines . The assumption that it is meaningful to compare pointers to different objects not located within the same array , or to objects of different types . Problem :the former fails on segmented architectures , the latter on word -oriented machines or others with multiple pointer formats . The assumption that an int is 32 bits , or (nearly equivalently )the assumption that sizeof (int ) ==sizeof (long ) . Problem : this fails on PDP -11s , 286 -based systems and even on 386 and 68000 systems under some compilers (and on 64 -bit systems like the Alpha , of course ). The assumption that argv [] is writable . Problem : this fails in many embedded -systems C environments and even under a few flavors of Unix . Note that a programmer can validly be accused of vaxocentrism even if he or she has never seen a VAX .
Some of these assumptions (
esp .
2 --
5 )
were valid on the PDP -
11 ,
the original C machine ,
and became endemic years before the VAX .
The terms vaxocentricity and all -
the -
world '
s -
a -
VAX syndrome have been used synonymously .
安装中文字典英文字典查询工具!
中文字典英文字典工具:
复制到剪贴板
英文字典中文字典相关资料:
I HATE CHAT GPT : r Rants - Reddit I HATE CHAT GPT I just need a place to vent my feelings about this atrocity, sorry I decided to try Chat GPT just for fun because I had been hearing so much about it and how smart it is and how powerful it is and all that crap Tried it out and was first impressed, than disgusted I made the idiotic mistake of asking it to write a poem
如何评价 OpenAI 凌晨发布的 GPT-5? - 知乎 ChatGPT 中的非推理模型以 gpt-5-chat-latest API的形式提供。 GPT-5 是一个统一系统,内置一个智能高效、可回答大多数问题的模型,一个用于处理更难问题的深度推理模型(GPT-5 thinking),以及一个实时路由器。
GPT-API-free DeepSeek-API-free - GitHub ️ 免费API Key gpt-5系列模型的推理能力较弱,若需要更强的推理能力,可以购买付费API ️ 免费API Key仅可用于个人非商业用途,教育,非营利性科研工作中。 免费API Key严禁商用,严禁大规模训练商用模型! 训练科研用模型请提前加群联系我们。
Is chatgpt pro much better than free : r ChatGPTPro - Reddit I'm getting by fine using free chat gpt and microsoft edge using copilot - which uses the latest version of paid chat gpt (is this incorrect?)…
不是说chat gpt是免费的吗,怎么只能免费问一次? - 知乎 后来自己注册gpt账号,能免费使用GPT-3 5,每月20刀的Gpt-4还是不大舍得去搞,3 5基本也够用了,搭配chatpdf等其他AI工具,用起来还是很方便的。 再后来,用过微软的Bing,还有早期只支持英文的Bard(Bard现在也支持中文了),各有特色,习惯了GPT,还是用它比较多。
Supported AI models in GitHub Copilot To learn how Copilot Chat serves different AI models, see Hosting of models for GitHub Copilot Footnotes GPT-5 4 nano is currently only available in the Codex Visual Studio Code extension (Copilot Pro+ only) and is not available in Copilot Chat ↩ ↩ 2 ↩ 3 MAI-Code-1-Flash is a continuously improving model
Can my professor really tell if I used chatgpt for a coding . . . - Reddit There is a need to evolve, soo the best way just to ask them to do something at a level of difficulty that should match the difficulty that existed before chat-gpt, like make them create new libs, or update existing one ! For sure a teacher knows the way to make students life misarable again heheheh if not they can always ask gpt how to do that
chat GPT近 2 年更新了 7 个版本,哪个最好用? - 知乎 而GPT 4o可以做的可以更多,它可以读word文档,excel表格,ppt文件,pdf文档,各种图片等等。 这种能力赋予了它多面手的作用,因为工作中很多事情依赖于大量的文件,很难用几句话描述清楚, 而最好的办法就是通通扔给大模型,然后让它去分析。
AI model comparison - GitHub Docs Comparison of AI models for GitHub Copilot GitHub Copilot supports multiple AI models with different capabilities The model you choose affects the quality and relevance of responses by Copilot Chat and Copilot inline suggestions Some models offer lower latency, while others offer fewer hallucinations or better performance on specific tasks This guide helps you pick the best model based on