Вопреки предпосылке вопроса: одним из первых массовых мобильных устройств был Newton , который был разработан для использования специализированного динамического языка под названием NewtonScript для разработки приложений. Среда и язык разработки Newton позволили приложениям легко работать вместе и обмениваться информацией - почти полная противоположность нынешнему опыту работы с iPhone. Хотя многим разработчикам, пишущим новые приложения Newton с нуля, это очень нравилось - NewtonScript «очень похож на Ruby» - у Newton были некоторые проблемы с производительностью, и портирование существующего кода было непростым, даже после того, как Apple добавила возможность включать код C в программа NewtonScript. Кроме того, было очень трудно защитить свою интеллектуальную собственность на Ньютоне - другие разработчики в большинстве случаев могли заглянуть внутрь вашего кода и даже перезаписать его фрагменты просто так - кошмар безопасности.
Ньютон был коммерческим провалом.
Palm взяла несколько лучших идей Apple - и усовершенствовала их - но отказалась от поддержки динамического языка в рамках общего упрощения, которое в конечном итоге привело к тому, что PalmOS получила большую долю рынка мобильных устройств (в течение многих лет) в качестве независимого мобильного программного обеспечения. разработчики стекались на новую платформу.
Было много причин , почему Ньютон был неудачным, но некоторые, вероятно, винят в этом Ньютон. Apple «думает иначе» с iPhone, и одним из первых решений, которые они, похоже, приняли, является максимально возможное использование существующей базы разработчиков и упрощение разработки в Objective C. Если iPhone станет официальным поддержка динамических языков, которая будет добавлена позже после долгих и тщательных размышлений о том, как лучше это сделать, при этом обеспечивая безопасную и высокопроизводительную платформу.
И через 5 минут после этого последуют другие. : -)