Comments 36
Идеальный скриптовый язык для WEB… сервера
Красивая, бестолковая и абсолютно бесполезная диаграмма. Нет, вы, конечно, можете пофантазировать — это же ваш проект; только практической пользы от этого не будет.
Вот смотрите:
>>WEB Server – встроенный веб сервер.
Встроенный куда? Пример можете привести для ясности?
Что такое InFilters, OutFilters? Чем отличается user code от user modules?
>>применяется для распределения задач
Что такое «задачи»? У вас нет такого термина
>> глобальное хранилище
Глобальное относительно чего?
… и еще множество вопросов.
К сожалению, вижу только много умных и сложных слов без смысла.
Вот смотрите:
>>WEB Server – встроенный веб сервер.
Встроенный куда? Пример можете привести для ясности?
Что такое InFilters, OutFilters? Чем отличается user code от user modules?
>>применяется для распределения задач
Что такое «задачи»? У вас нет такого термина
>> глобальное хранилище
Глобальное относительно чего?
… и еще множество вопросов.
К сожалению, вижу только много умных и сложных слов без смысла.
Разъяснения будут дальше, и более подробно, но вкратце:
Web Server — пишется на самом языке и является одним из стандартных модулей, поэтому он всегда в наличии.
InFilters и OutFilters — входной и выходной фильтры, InFilters позволяет изменять запрос, например по типу mod_rewrite в апаче, OutFilters позволяет изменить отправляемый контент, например закешировать весь вывод.
user code — просто выполняемый код, логика приложения
user modules — готовые модули которые либо расширяют стандартную библиотеку, либо реализуют другие законченные функции написанные пользователем.
Задачи — например можно базу данных держать на другой машине и код для работы с ней запускать там, отправляем SQL запрос на другую машину и если нам данные в данный момент не нужны не ждем их, а дальше продолжаем выполнение приложения, как только запрос на другой машине выполнится мы получаем данные и добавляем их в нужное место
Глобальное хранилище — это скомпилированный байт код стандартных модулей и библиотек + пользовательский байт код который необходимо использовать в дальнейшем
Web Server — пишется на самом языке и является одним из стандартных модулей, поэтому он всегда в наличии.
InFilters и OutFilters — входной и выходной фильтры, InFilters позволяет изменять запрос, например по типу mod_rewrite в апаче, OutFilters позволяет изменить отправляемый контент, например закешировать весь вывод.
user code — просто выполняемый код, логика приложения
user modules — готовые модули которые либо расширяют стандартную библиотеку, либо реализуют другие законченные функции написанные пользователем.
Задачи — например можно базу данных держать на другой машине и код для работы с ней запускать там, отправляем SQL запрос на другую машину и если нам данные в данный момент не нужны не ждем их, а дальше продолжаем выполнение приложения, как только запрос на другой машине выполнится мы получаем данные и добавляем их в нужное место
Глобальное хранилище — это скомпилированный байт код стандартных модулей и библиотек + пользовательский байт код который необходимо использовать в дальнейшем
Что-то вы решили на мои вопросы не отвечать, похоже, а разговариваете сам с собой :)
>> Web Server — пишется на самом языке и является
Вопрос состоял в том, чтобы узнать «куда он встроен». Так куда же?
>>user code — просто выполняемый код, логика приложения
>>user modules — готовые модули
Они у вас ничем не отличаются друг от друга, судя по описанию; зачем их разделять?
>> Задачи — например можно базу данных держать
Еще раз — что такое «задачи»?
>> Глобальное хранилище — это скомпилированный байт код
Вопрос был «относительно чего оно глобальное»?
Вы, кроме как на php, еще на чем пишете? Пользуетесь ли при этом IDE? Если да, то что делать с вашим языком?
>> Web Server — пишется на самом языке и является
Вопрос состоял в том, чтобы узнать «куда он встроен». Так куда же?
>>user code — просто выполняемый код, логика приложения
>>user modules — готовые модули
Они у вас ничем не отличаются друг от друга, судя по описанию; зачем их разделять?
>> Задачи — например можно базу данных держать
Еще раз — что такое «задачи»?
>> Глобальное хранилище — это скомпилированный байт код
Вопрос был «относительно чего оно глобальное»?
Вы, кроме как на php, еще на чем пишете? Пользуетесь ли при этом IDE? Если да, то что делать с вашим языком?
Мы просто общаемся на разных языках!
>>Вопрос состоял в том, чтобы узнать «куда он встроен». Так куда же?
Он будет работать на уровне демона внутри VM, то есть по сути являтся частью VM
>>Они у вас ничем не отличаются друг от друга, судя по описанию; зачем их разделять?
user modules — законченный и отлаженный класс или набор классов которые либо не будут изменяться, либо будут изменяться крайне редко, тогда мы их один раз скомпилировали и байт код закешировали для дальнейшего использования
user code — наоборот код который нельзя выделить в отдельный класс либо часто редактируется, либо не должен быть кеширован.
>>Еще раз — что такое «задачи»?
После получения запроса от пользователя, мы должны ему что-то ответить на его запрос, вот и разделяем запрос на задачи, где-то надо из базы данных что-то получить, где-то надо в файл записать и т.д. и делать это одновременно.
>>Вопрос был «относительно чего оно глобальное»?
Глобальное не относительно чего, а глобальное в смысле одно на всю VM
Кроме php пишу на С/С++ и Java. IDE для php Zend Studio, для остального NetBeans. Я думаю несложно будет написать плагин для различных IDE для подсветки синтаксиса, для отладки можно написать дебагер
>>Вопрос состоял в том, чтобы узнать «куда он встроен». Так куда же?
Он будет работать на уровне демона внутри VM, то есть по сути являтся частью VM
>>Они у вас ничем не отличаются друг от друга, судя по описанию; зачем их разделять?
user modules — законченный и отлаженный класс или набор классов которые либо не будут изменяться, либо будут изменяться крайне редко, тогда мы их один раз скомпилировали и байт код закешировали для дальнейшего использования
user code — наоборот код который нельзя выделить в отдельный класс либо часто редактируется, либо не должен быть кеширован.
>>Еще раз — что такое «задачи»?
После получения запроса от пользователя, мы должны ему что-то ответить на его запрос, вот и разделяем запрос на задачи, где-то надо из базы данных что-то получить, где-то надо в файл записать и т.д. и делать это одновременно.
>>Вопрос был «относительно чего оно глобальное»?
Глобальное не относительно чего, а глобальное в смысле одно на всю VM
Кроме php пишу на С/С++ и Java. IDE для php Zend Studio, для остального NetBeans. Я думаю несложно будет написать плагин для различных IDE для подсветки синтаксиса, для отладки можно написать дебагер
Да нет, по-моему, на русском оба :)
>> Он будет работать на уровне демона внутри VM, то есть по сути являтся частью VM
Окэ. Как это соотносится с тем, что вы сказали что он (цитирую) «пишется на самом языке», т.е. работает поверх VM?
Насчет user-modules понял. Не понял только вот что — вы планируете кешировать только классы/модули целиком, что ли? Если нет, то почему именно user-code нельзя его кешировать вместе с остальными модулями, ведь у вас кеш кода работает прозрачно?
>> вот и разделяем запрос на задачи
Очень хорошо, но абстрактно. Вы их сами планируете исполнять, что ли, на калькуляторе, или отсылать на спутник :)? Что такое «задача»? Где она хостится, как она представлена, кто ее выполняет — или вы это сами не представляете?
>> глобальное в смысле одно на всю VM
Ясно. Т.е. если у вас на VDS несколько VM запущено с одинаковыми приложениями, то и кэш кода планируется у каждой VM свой. Нехорошо — одна и та же библиотека кода будет несколько раз оттранслирована и загружена в каждую VM, отъедая и без того небольшую память.
>> Я думаю несложно будет написать плагин
Сколько у вас в активе написанных компиляторов/анализаторов или дебаггеров, и плагинов?
Ну и чисто прагматический вопросы, связанные с VM — сколько раз писали VM? Сборка мусора там будет? Как планируете решать этот вопрос?
>> Он будет работать на уровне демона внутри VM, то есть по сути являтся частью VM
Окэ. Как это соотносится с тем, что вы сказали что он (цитирую) «пишется на самом языке», т.е. работает поверх VM?
Насчет user-modules понял. Не понял только вот что — вы планируете кешировать только классы/модули целиком, что ли? Если нет, то почему именно user-code нельзя его кешировать вместе с остальными модулями, ведь у вас кеш кода работает прозрачно?
>> вот и разделяем запрос на задачи
Очень хорошо, но абстрактно. Вы их сами планируете исполнять, что ли, на калькуляторе, или отсылать на спутник :)? Что такое «задача»? Где она хостится, как она представлена, кто ее выполняет — или вы это сами не представляете?
>> глобальное в смысле одно на всю VM
Ясно. Т.е. если у вас на VDS несколько VM запущено с одинаковыми приложениями, то и кэш кода планируется у каждой VM свой. Нехорошо — одна и та же библиотека кода будет несколько раз оттранслирована и загружена в каждую VM, отъедая и без того небольшую память.
>> Я думаю несложно будет написать плагин
Сколько у вас в активе написанных компиляторов/анализаторов или дебаггеров, и плагинов?
Ну и чисто прагматический вопросы, связанные с VM — сколько раз писали VM? Сборка мусора там будет? Как планируете решать этот вопрос?
>>Окэ. Как это соотносится с тем, что вы сказали что он (цитирую) «пишется на самом языке», т.е. работает поверх VM?
А что Вас в этом смущает, на Java можно же написать сервер. Просто код постоянно работающий внутри VM.
Если я автоматически генерирую код и изменяю его раз в 5 секунд, зачем я буду его кешировать.
Задачи
Вы хотите в рамках одного топика увидеть архитектуру целой системы?
С одной стороны это безопасность, я не должен отвечать за, то что запущено на другой VM, а уж если мне надо выполнить, то что есть на другой VM, то для этого есть RPC
Я имел в виду не только себя, а и людей заинтересованных.
VM в составе нескольких человек написали % на 70 за полтора месяца
А что Вас в этом смущает, на Java можно же написать сервер. Просто код постоянно работающий внутри VM.
Если я автоматически генерирую код и изменяю его раз в 5 секунд, зачем я буду его кешировать.
Задачи
Вы хотите в рамках одного топика увидеть архитектуру целой системы?
С одной стороны это безопасность, я не должен отвечать за, то что запущено на другой VM, а уж если мне надо выполнить, то что есть на другой VM, то для этого есть RPC
Я имел в виду не только себя, а и людей заинтересованных.
VM в составе нескольких человек написали % на 70 за полтора месяца
прошу прощения что встреваю в такую увлекательную дискуссию.
>> Web Server — пишется на самом языке и является
если всё описаное выше принять как основу/фреймворк/платформу, то web-server это скорее всего один из сервисов(в динамике)/модулей(в статике) этой платформы
>> Задачи — например можно базу данных держать
Скорее всего это юнит работы(Unit of Work), возможно Task. Остается непонятным, какой механизм диспетчеризации/взаимодействия этих задач выбрал автор. Будут они параллельны, аль последовательны, как делить ресурсы и контекст исполнения, будут они persistent или только runtime и.т.п
на вопросы «глобально/локально» я не нашел ответа, бо диаграмм никаких нет, смотреть негде
>> Web Server — пишется на самом языке и является
если всё описаное выше принять как основу/фреймворк/платформу, то web-server это скорее всего один из сервисов(в динамике)/модулей(в статике) этой платформы
>> Задачи — например можно базу данных держать
Скорее всего это юнит работы(Unit of Work), возможно Task. Остается непонятным, какой механизм диспетчеризации/взаимодействия этих задач выбрал автор. Будут они параллельны, аль последовательны, как делить ресурсы и контекст исполнения, будут они persistent или только runtime и.т.п
на вопросы «глобально/локально» я не нашел ответа, бо диаграмм никаких нет, смотреть негде
Попробуй придумать сервисно-ориентированный язык :)
Удаленные переменные и массивы, хранение деревьев и списков на уровне распределенной бд, также и создание типов на уровне создания таблиц в бд.
При этом разработчик использует обычный синтаксис, а выполняются такие программы на уровне веб сервисов, rest запросами.
:)
Удаленные переменные и массивы, хранение деревьев и списков на уровне распределенной бд, также и создание типов на уровне создания таблиц в бд.
При этом разработчик использует обычный синтаксис, а выполняются такие программы на уровне веб сервисов, rest запросами.
:)
прозреваю в описанном уже существующий stackless python
тасклеты, байткод, рантайм, XML-RPC
осталось прикрутить его к существующей веб платформе
тасклеты, байткод, рантайм, XML-RPC
осталось прикрутить его к существующей веб платформе
А почему язык для веб сразу должен быть скриптовым?
Рискую быть осужденным за пессимизм, но если у вас нету команды разработчиков в одном городе, то, имхо, писать новый язык — бесперспективно. Потянуть все это в одиночку нереально, а надеется на сообщество — неправильно.
В программировании сфер, куда можно приложить светлую голову, — немеренно. Почему сразу новый язык?
Рискую быть осужденным за пессимизм, но если у вас нету команды разработчиков в одном городе, то, имхо, писать новый язык — бесперспективно. Потянуть все это в одиночку нереально, а надеется на сообщество — неправильно.
В программировании сфер, куда можно приложить светлую голову, — немеренно. Почему сразу новый язык?
Идеальный скриптовый язык для WEB (http://bugblind.habrahabr.ru/blog/43651/)
По условиям дипломного проекта
По условиям дипломного проекта
Вы уверены, что потяните такую большую задачу? Зачем вам это?
Вам кажется, что вашего энтузиазма хватит на долго? К сожалению, он проходит быстро (знаю по себе).
Вы хотите заинтересовать сильных разработчиков и в итоге набрать команду? Во-первых, на Хабре, как и везде, их мало. Во-вторых, вы уже их отпугиваете своими, прям скажем, совсем не четкими ответами на вопросы. В-третьих, команду тоже надо мотивировать.
Учитывая современное разнообразие языков и фреймворков, написать новый язык и поддерживать его на таком уровне, чтобы им кто-то пользовался, в одиночку нереально.
Вам кажется, что вашего энтузиазма хватит на долго? К сожалению, он проходит быстро (знаю по себе).
Вы хотите заинтересовать сильных разработчиков и в итоге набрать команду? Во-первых, на Хабре, как и везде, их мало. Во-вторых, вы уже их отпугиваете своими, прям скажем, совсем не четкими ответами на вопросы. В-третьих, команду тоже надо мотивировать.
Учитывая современное разнообразие языков и фреймворков, написать новый язык и поддерживать его на таком уровне, чтобы им кто-то пользовался, в одиночку нереально.
Во-первых это очень сложная, но интересная задача, во-вторых некоторые моменты не до конца продуманы именно поэтому в диалоге с Хабровчанами и решается вопрос, как лучше сделать то или иное, а в-третьих на данном этапе команда не нужна.
Я планирую написать еще несколько топиков где и разложить все по полочкам, извиняюсь за некоторые непонятные пока высказывания, но без прочтения остальных частей картину очень сложно объяснять.
Еще один идеальный язык для чего-то… Мы живем в мире, где php и С++ доминируют каждый в своей области, не являясь ни идеальными, ни даже слишком последовательными или стройными :)
Это, насколько понимаю, развлечения ради и удовольствия для?
Это, насколько понимаю, развлечения ради и удовольствия для?
Вы написали про платформу, про язык нет ни одной строчки.
о чем вы, это же «идеальный скриптовый язык» он включает в себя все парадигмы, имеет идеальный синтаксис и компилируется за один такт расходуя одну минимальную единицу памяти на любой аппаратной платформе.
вопросы излишни
вопросы излишни
Для начала описание платформы, чтобы в дальнейшем было понятно зачем и для чего в языке некоторые вещи
Уважаемый тов. Дмитрий,
Предлагаю следующий подход: в дипломе Вы определяете идеологию и формы.
Но ничего не пишете.
Синтаксис и высоко-уровневые штуки, но только как ТЗ.
Реализовать крайне тяжко в-одного.
= По сути могу следующее предложить =
Идеальный для кого? Для девелопера или тестера или архитектора?
В чём идеальность? Сразу скажу, что слово идеальный меня сходу коробит, ибо на вкус и цвет.
Следовательно надо дописать кучу уточняющих слов — дял кого именно.
= Вот к примеру, чтоб я хотел? =
Чтобы меньше печатать и визуально чтобы tool все выделял.
С этой т.з. мне нравится питон, где всё жеско — скобки заменены на отступы и нииbird.
Даже если убрать в себе непривычность отсутсвия скобок, то это уже плюс: не надо скобки нажимать.
Далее по синтаксису. Что мне в ПХП не нравится, так это писать -> у объектов, а в сишарпе тупо
точка, которая рядом с правым шифтом.
Щас короче я чисто о юзабилити говорю, но далее будут tipical tasks.
Опять же в php бакс, как обозначение переменной: даже на EN он требует шифта — это напрягает.
Именования методов и объектов д.б. CamelCase. Чтобы однообразно, а подчерк в именах переменных и методов запретить :) Почему CamelCase? Да всё также! Быстрее! Шифт с буквой быстрее пишется, чем шифт, затем подчерк, затем буква.
Спец.символов минимум, а не как в перле — каждая хрень что-то да значит.
90% времени мы читаем код. С документацией и типами как-то решить.
Конечно xxxDoc — хорошо, но это уже давно можно как-то встроить в язык.
Хотя опять же для какой-нить херни каждый раз писать int i, заместо просто i напрягает.
Т.е. типы например опционально как-то указывать и то только для читающих код людей и IDE. А уж сам движок должен после компиляции или что он там делает оптимизировать всё и вся.
= Терь по типикал таскс =
Валидация, вывод, интеграция в HTML (это про в пхп), почта, база.
Причём не д.б. ужоса .NET`а, когда одно и тоже можно 10 способами сделать, а д.б. раз и навсегда православные пути, чтобы не изобретать велосипеды.
Ну и в слое представления желательна какая-нить прозрачная, но близкая «интеграция» с HTML`ем, Javascript`ом и CSS`ом, но за одним API.
Типа как DOM, но более человеческий что ли. Чтобы прям здесь, не отходя от кассы можно было сделать типа currentTag.href = 'http://ya.ru/' или currentTag.hide() и он уже у него какйо-нить CSS-класс __hide прописывает, который уже где-нить типа display: none и т.д. Но в итоге девелопер болшую часть времени только в одном синтаксисе проводит.
Вот как-то так — brain row dump :)
Предлагаю следующий подход: в дипломе Вы определяете идеологию и формы.
Но ничего не пишете.
Синтаксис и высоко-уровневые штуки, но только как ТЗ.
Реализовать крайне тяжко в-одного.
= По сути могу следующее предложить =
Идеальный для кого? Для девелопера или тестера или архитектора?
В чём идеальность? Сразу скажу, что слово идеальный меня сходу коробит, ибо на вкус и цвет.
Следовательно надо дописать кучу уточняющих слов — дял кого именно.
= Вот к примеру, чтоб я хотел? =
Чтобы меньше печатать и визуально чтобы tool все выделял.
С этой т.з. мне нравится питон, где всё жеско — скобки заменены на отступы и нииbird.
Даже если убрать в себе непривычность отсутсвия скобок, то это уже плюс: не надо скобки нажимать.
Далее по синтаксису. Что мне в ПХП не нравится, так это писать -> у объектов, а в сишарпе тупо
точка, которая рядом с правым шифтом.
Щас короче я чисто о юзабилити говорю, но далее будут tipical tasks.
Опять же в php бакс, как обозначение переменной: даже на EN он требует шифта — это напрягает.
Именования методов и объектов д.б. CamelCase. Чтобы однообразно, а подчерк в именах переменных и методов запретить :) Почему CamelCase? Да всё также! Быстрее! Шифт с буквой быстрее пишется, чем шифт, затем подчерк, затем буква.
Спец.символов минимум, а не как в перле — каждая хрень что-то да значит.
90% времени мы читаем код. С документацией и типами как-то решить.
Конечно xxxDoc — хорошо, но это уже давно можно как-то встроить в язык.
Хотя опять же для какой-нить херни каждый раз писать int i, заместо просто i напрягает.
Т.е. типы например опционально как-то указывать и то только для читающих код людей и IDE. А уж сам движок должен после компиляции или что он там делает оптимизировать всё и вся.
= Терь по типикал таскс =
Валидация, вывод, интеграция в HTML (это про в пхп), почта, база.
Причём не д.б. ужоса .NET`а, когда одно и тоже можно 10 способами сделать, а д.б. раз и навсегда православные пути, чтобы не изобретать велосипеды.
Ну и в слое представления желательна какая-нить прозрачная, но близкая «интеграция» с HTML`ем, Javascript`ом и CSS`ом, но за одним API.
Типа как DOM, но более человеческий что ли. Чтобы прям здесь, не отходя от кассы можно было сделать типа currentTag.href = 'http://ya.ru/' или currentTag.hide() и он уже у него какйо-нить CSS-класс __hide прописывает, который уже где-нить типа display: none и т.д. Но в итоге девелопер болшую часть времени только в одном синтаксисе проводит.
Вот как-то так — brain row dump :)
Идеальный для разработчика и того кто будет код сопровождать, хотя бы для большинства
Синтаксис похож на сильно урезаный Java, поэтому я думаю проблем с изучением не будет.
Насчет типизации, типы переменных желательно указывать, но если не указать, то по умолчанию будет тип dynamic и определятся по содержимому переменной.
Пытался изучить Перл, после просмотра документации настроение пропало и дальше простых скриптов не ушел :-(
Синтаксис похож на сильно урезаный Java, поэтому я думаю проблем с изучением не будет.
Насчет типизации, типы переменных желательно указывать, но если не указать, то по умолчанию будет тип dynamic и определятся по содержимому переменной.
Пытался изучить Перл, после просмотра документации настроение пропало и дальше простых скриптов не ушел :-(
> Хотя опять же для какой-нить херни каждый раз писать int i, заместо просто i напрягает.
Дело привычки. Но время при отладке строгая типизация экономит очень много.
Дело привычки. Но время при отладке строгая типизация экономит очень много.
:)
Ещё прямые руки и грамотные комменты.
Я имел в виду такую ситуацию, когда у нас в меру или язык сам определяет тип.
Например,
1. SomeClass someObject = new SomeClass(someParameter);
2. someObject = new SomeClass(someParameter);
В большинстве случаев someObject у нас всегда типа SomeClass и экран не засоряется и человек лишний раз на кнопки не тычет.
Т.е. здесь баланс какой-то разумный д.б.
Ещё прямые руки и грамотные комменты.
Я имел в виду такую ситуацию, когда у нас в меру или язык сам определяет тип.
Например,
1. SomeClass someObject = new SomeClass(someParameter);
2. someObject = new SomeClass(someParameter);
В большинстве случаев someObject у нас всегда типа SomeClass и экран не засоряется и человек лишний раз на кнопки не тычет.
Т.е. здесь баланс какой-то разумный д.б.
Выше я уже описал на мой взгляд разумное решение вопроса, если Вы указали тип переменной значит хорошо, если нет, то переменная получает тип dynamic и её тип при компиляции определяется по содержимому.
В первом случае сразу видно, что переменная еще не была определена выше. Во втором будешь искать выше по коду где и как она была определена.
Да, громоздкость синтаксиса в той же Java порой мешает. Но один раз убив полдня на поиск причины ошибки, я буду лучше использовать язык с избыточным синтаксисом. Нервы дороже, а нормальная IDE поможет быстренько набивать код.
Да, громоздкость синтаксиса в той же Java порой мешает. Но один раз убив полдня на поиск причины ошибки, я буду лучше использовать язык с избыточным синтаксисом. Нервы дороже, а нормальная IDE поможет быстренько набивать код.
Добавлю.
Большее кол-во времени программисты проводят не за написанием кода, а за его отладкой. Язык должен уменьшать время отладки всеми возможными способами. Оценить это можно лишь тогда, когда совершаешь глупую ошибку и из-за гибкости синтаксиса долго не можешь ее заметить.
Не просто так появляются стандарты кодирования с обязательным, к примеру, проставлением скобок для условных операторов. Да, для простенького скриптика из 10 строчек это — лишнее. Для большой программы это лишний способ избежать ошибок.
Кроме того, строгий синтаксис заставляет больше думать во время проектирования, что в конечном счете выливается в более хороший код.
Большее кол-во времени программисты проводят не за написанием кода, а за его отладкой. Язык должен уменьшать время отладки всеми возможными способами. Оценить это можно лишь тогда, когда совершаешь глупую ошибку и из-за гибкости синтаксиса долго не можешь ее заметить.
Не просто так появляются стандарты кодирования с обязательным, к примеру, проставлением скобок для условных операторов. Да, для простенького скриптика из 10 строчек это — лишнее. Для большой программы это лишний способ избежать ошибок.
Кроме того, строгий синтаксис заставляет больше думать во время проектирования, что в конечном счете выливается в более хороший код.
PHP с компилятором в C++ от известных ребят разве не подойдёт?
Кстати, совсем забыл. C# даёт очень хорошую скорость с последним IIS под VDS-хостингом.
Очень хорошую, скриптовые языки отдыхают. Не пробовали?
Очень хорошую, скриптовые языки отдыхают. Не пробовали?
Sign up to leave a comment.
Идеальный скриптовый язык для WEB — Начало