

Strongly Encouraging XCode Lets Apple Switch Architectures - wallflower
http://stevecheney.posterous.com/the-genius-in-apples-vertical-platform

======
nl
_This analysis is not yet mainstream_

Good, because it's wrong.

 _but will add tremendous fuel to the fire that perhaps the A4 is NOT an ARM
architecture._

No it won't

 _In fact, it’s highly possible that the A4 is a dual core Power Architecture_

No it's not.

If you read other articles from that site claiming that the A4 is PowerPC, it
becomes clear that the author came up with the PowerPC theory months ago
(before the iPad was released - see
[http://markstechchat.blogspot.com/2010/02/ipad-saga-
week-3-a...](http://markstechchat.blogspot.com/2010/02/ipad-saga-
week-3-a4-processor-trade.html) for example) and is now grasping at any straw
to avoid being wrong.

------
tptacek
The part about mandating Xcode allowing Apple to switch from ARM to something
else is a good point.

The part about Apple secretly running iPhone apps under an ARM emulator seems
a little crackpot.

~~~
fortybillion
The article seems to insinuate that everything on the iPad runs under an ARM
emulator. It would make more sense that OS version 3.2 running on the iPad is
already compiled for the A4 (hence the astonishing speed), and only iPhone-
native apps were emulated.

But you're right, it does seem a little crackpot. Couldn't someone decompile
an iPad executable and see if it's ARM code or not?

~~~
comex
It is. Even the kernel.

~~~
tptacek
Ah, but that doesn't matter, because they're _emulating_ ARM, you see.

~~~
joezydeco
The jailbreakers are emulating ARM too? The conspiracy deepens!

~~~
tptacek
They could be running the iPhone OS as a hardware-virtualized VM!

~~~
joezydeco
...and then it's turtles all the way down!

~~~
stcredzero
You keep using that phrase. I do not think it means what you think it means.

~~~
joezydeco
Hmm. I just looked through my last 170 days of comments and I found the word
"Turtle" exactly once. And it's in this thread.

I don't believe I need to explain the joke. +7 kind of hints that some people
agree.

~~~
stcredzero
You're taking that in a way I didn't mean

------
abstractbill
Unless I'm missing something, Apple _didn't_ mandate that you need to use
XCode. They said that you need to "originally write" apps in C, C++ or
Objective-C. You can do that without using XCode, and conversely you can use
XCode to compile something that's not "originally written" in one of those
languages (by using C as an intermediate language).

~~~
tptacek
Presumably you still need to use their compiler toolchain.

~~~
abstractbill
For the DRM signing stuff, yeah I would guess you almost certainly do need
Apple's toolchain. I wouldn't be surprised if you can use other tools to do
everything else though - indeed, Adobe was just using LLVM to output ARM
assembly for their Flash-to-iPhone compiler.

From the legal side, I haven't seen any requirement that you use their
toolchain - again, it's just been the "originally written in" stuff.

------
jsz0
Valid point but the author misses the mark a bit. Apple probably won't move
away from ARM but instead enhance and mutate their own ARM design. The A5, A6
and beyond could retain 100% binary compatibility but also offer many new
features. At that point it would technically be an ARM CPU but to be used to
its maximum you would need a compiler ready to support all those new features.
In the case of a product like the iPad that was unveiled to the public only 2
months before it went on sale it would be difficult for third parties to keep
up. From Apple's perspective sharing this type of information publicly on a
reasonable time frame to support third parties could take away a significant
advantage they have with in-house CPU development. If you're going to tell
your competition 6 months ahead of time what you're doing by the time you ship
a product they're going to be less than 6 months behind you.

------
comex
Nobody is mandating XCode. You can use any editor you want as long as your
code is C, C++, Objective-C, or Javascript.

~~~
wallflower
Changed the title. I posted this because it made me think that Apple is truly
becoming the most vertically integrated company in the world, from Silicon to
AppStore.

In the movie, Objectified, by Gary Hustwit, the legendary designer Dieter Rams
(of iconic Braun fame, the electric shaver), is asked if there is any company
that _really_ gets design _today_. He answers, after a moment's pause,
"Apple".

My point here is Apple is integrating design down to lower levels anyone has
done before. Some companies talk about corporate DNA but Apple is going to
Jurassic Park levels.

<http://www.youtube.com/watch?v=KBF1rOxWsxg>

------
aaronbrethorst
I don't get it. As long as an ARM binary or a 'Super-Secret A4 Architecture'
binary is produced, who cares? I can write Objective C code in TextMate and
then use xcodebuild from the command line to build a fully functional iPhone
or iPad app.

~~~
wmf
Adobe cares, because Flash CS5 only generates ARM code, not secret-crackpot-
processor code. In theory.

~~~
Zak
If this was their goal, they could just mandate a specific C compiler. You can
originally write in Scheme, translate it to C with Chicken and use whatever C
compiler you want to compile the result. There would be no affect on any
platform-switching plans Apple might have.

------
tibbon
I was under the impression that the A4 chip had been cut up, put under x-ray,
etc and looked to be a fairly standard chip... not a C2D or similar.

------
holman
> This incredible foresight will allow Apple to stay agile and maneuver in the
> face of what will be unrelenting competition

I mean, there's plenty of arguments on both sides of it — yay Apple can make
changes on a whim, boo my custom-baked solution makes me so productive — but
calling it "incredible foresight" is a little overzealous. From Apple's
perspective, they want an additional element of control, and to call it a huge
breakthrough is a bit magoo.

That said, Apple's not quite the type of company to be overly tied-down in the
first place. These are the guys that ripped Carbon out from under a lot of
people. Sure, it was clear Cocoa was getting all the TLC, but not a lot of
companies would yank an established API quite that quickly (particularly with
relative giants like Adobe sitting on it).

~~~
cpr
"Ripped Carbon out"? ... well, yes, but they gave people many years of
warning, and still support it in 32-bit mode in 10.6.

------
theBobMcCormick
Sound like bullshit. Apple didn't mandate the use of XCode, they mandated the
use of C, C++, or Objective C. They also said you _can't_ use a layer that
_generates_ C, C++, or Objective C.

If all they want is for you to use their compiler/linker, etc. then there
should be no reason you can't use a tool that compiles actionscript,
javascript, lua, etc down to C code which you then compile with Apple's
compiler.

Face it, there are _no_ credible explanations for the new TOS other than
simply blocking a competitor (ie, Adobe) from having access to your platform.

Frankly, I'm more than a little surprised to see such a pro-free market crowd
as HN so supportive of the new iPhone TOS.

~~~
tptacek
The free markets argument in favor of the new TOS: it's a free market, and
Apple should be able to ship whatever product they want.

~~~
Psyonic
I don't believe we've heard anyone calling for the government to step in and
force them to. But people are free to express why they think its a bad idea,
for them and for Apple (in the long term), just as you are free to disagree
with them.

~~~
tptacek
That's a straw man. Nobody's saying you can't have opinions. I'm just
commenting about a particularly flimsy opinion.

------
cturner
The itouch had some undisclosed bluetooth in it that was enabled by subsequent
software. Could the A4 chip be housing more than one core? ARM, and something
else as well, to be activated by software later? They're already taking a bath
on the unit as a long-term investment, so anything's possible.

------
logicalstack
I have doubts that Apple is planning to switch to ARM from Intel if for no
other reason that ARM is not 64bit and from what I recall it's not in the
roadmap. This works fine for small devices but obviously won't work for
anything larger. I doubt a PAE-style kernel is a legitimate option.

~~~
bigboote
Why would you need 64 bit addressing on an iPad?

------
rbanffy
Basing their OSs on Unix is what enables Apple to switch architectures rather
easily. Moving OS9 to Intel would be a huge undertaking, much bigger than the
68K to PPC migration of OS7, mostly because the huge performance gap wasn't
there. By that time, NeXT's environment had been successfully ported from 68K
to SPARC, HP-PA and x86 (I can't remember if MIPS was in the lot too) running
over at least three different kernels (Solaris, HP/UX and it's native kernel
ported to x86). The PPC port and the resulting OSX was one more in a series of
successful ports (and built on work that ported the Mach kernel to PPC that
ran under MkLinux - I used it).

Having a clearly defined architecture-neutral API sitting over a portable
kernel is the way to go. In fact, it has been the way to go in the Unix world
since about the time I was born. ARM is the winning ISA this week, but betting
the farm on it being the winning ISA forever is just silly.

------
ajg1977
What a load of tosh. XCode is an IDE, not some magical tool that spits out
some iPhone/iPad compatible file.

Aside from that, if Apple planned to change architecture then having apps
running on a translation layer (Flash etc) would actually be beneficial.

------
edster
The iPad crash reports claim to be ARM. symbolicating an iPad crash report
with the wrong architecture would produce garbage.

------
shralpmeister
s/XCode/Xcode/g

