Можно ли теоретически написать java машину на php?

программирование php java


Примечание:
tch74
Может в cron-е процедуру соответствующую реализовать?

Примечание:
Так а если добавить немного практики. Допустим на хостинге, который поддерживает только php можно создать java машину?

Примечание:
Epsiloncool
ну ясно, что ни один разумный человек, который хотя бы в общих чертах представляет о чем идет речь не будет писать java машину, чтобы сэкономить 10$
Ответы:
> Можно ли теоретически написать java машину на php?
Нет. У вас начнутся проблему при написании garbage collector'а (и не только его).
Java - интерпретируемый клиентский язык. А php - интерпретируемый серверный язык.
Можно конечно сделать парсер Java-кода, но интерпретация интерпретируемого языка через интерпретацию - это ещё что-то....
Да. Хоть на BkainFuck.
Один вообще на JavaScript написал эмулятор 80386
PHP — полон по Тьюрингу, следовательно, можно.
> PHP — полон по Тьюрингу, следовательно, можно.
Тогда, напишите на PHP драйвер для принтера.
Полнота по Тьюрингу означает, что на данном языке можно реализовать любую вычислительную функцию, но не будем забывать, что на практике это не означает, что язык можно применять везде где вздумается. Т.к. языки не существуют в вакууме, у них есть интерпретаторы, виртуальные машины и т.д. Которые и будут вставлять вам палки в колеса при "реализации любой вычислительной функции в реальном мире". Не нужно путать идеальный математический мир с реальными практическими задачами.
Если рассматривать программирование на PHP, как доказательство математической теоремы (как это свойствено всем Тьюринг-полным языкам), то тогда да, на PHP можно реализовать все что угодно (но не забывайте, что Машина Тьюринга, на основе которой и доказывается полнота того или иного языка - это всего-лишь математическая абстракция, а не реальное устройство).
tch74:
> Не нужно путать идеальный математический мир с реальными практическими задачами.
А при чем тут реальная практическая задача? В вопросе-то спрашивается именно о теоретической возможности.
Соответственно, и ответ был дан теоретический.
> Соответственно, и ответ был дан теоретический.
Тогда согласен.
Итог: В теории на PHP можно написать JVM, а на практике - нет.
Вопрос можно закрывать :)
> Допустим на хостинге, который поддерживает только php можно создать java машину?
На том PHP который есть сейчас, вы можете рассчитывать только на несложный эмулятор JVM, который с самой JVM не имеет ничего общего. И для такого эмулятора понадобится как минимум выделенный сервер, чтоб запускать более или менее реальные задачи. Но это не будет JVM, точно так же как домик сложенный из кубиков ребенком никогда не станет настоящим домом, в котором смогут жить реальные люди.
2 NotSoMatter
Да, можно. Никто не мешает брать апплеты и исполнять их в эмуляторе, написанном на PHP точно так же, как это делает обычная виртуальная машина. Однако я могу предположить, что никто не будет писать такой эмулятор с какой-либо коммерческой целью, потому что экономия в $10/месяц на говнохостинге не оправдывает затрат на написание эмулятора.


10 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.