1. Реализует ТОЛЬКО ОДНУ парадигму, средства ЯП не дает использовать другие.
2. Имеет жесткий синтаксис. (Одно действие — одна синтаксическая конструкция, для его реализации, желательно совсем без альтернатив, а тем более без альтернатив имеющих разное быстродействие\употребляющее разное количество ресурсов).
3. Изначально проектировался, как web ЯП с заложенными в нём инструментами и средствами для разработки высоконагруженных приложений.
4. Все средства разработки под данный ЯП есть в *nix'сах.
5. (Не обязательное) Имеет хорошие инструменты по работе с памятью.
Возможен ответ «из одного слова» — названия ЯП, но всё же желательно, что бы Вы дали небольшой комментарий, по каждому из моих пунктов, касательно ЯП который Вы под них предлагаете.
Всем ответившим, заранее спасибо, ответ нужен для решения спора с коллегой. Мнению хабровчан, он доверяет лучше моего.
UPD: Вот языки, которые частично или полностью подошли под заданные требования, по мнению хабровчан:
1. «Нет такого ЯП»
2. Java
3. Erlang
4. Ассемблер
Если Вы хотите предложить ещё какой ни будь ЯП — добавляйте ответ. Ещё раз писать, язык который уже есть в списке, не нужно. Мне необходим перечень, а не статистика или аргументы. Всем отвечающим, большое спасибо! И приношу свои извинения, всем кому не понравилась абстрактность и не однозначность вопроса.
1 — подходит пролог, но он не веб. Что вы тут имели ввиду вообще?
2 — любой ЯП, у всех свой синтаксис.
3 — любой веб-яп
4 — девелопить можно почти на всех на разных платформах
5 — Любой ЯП, который не содержит автоматического GC.
Вообще требования у вас из разряда «кто в лес, кто по дрова» Суть то какая? Какой проект? Какие требования реальные?
1. Да, пролог частично подходит под мои требования, но как вы правильно заметели, это не веб язык. И извините, что не уточнил, что подразумеваю под веб языком, (понятие то и правда растяжимое), имееться ввиду серверный язык, служащий для реализации интерактивных, (или правильнее сказать динамических?), web-приложений, т.е. работающих в браузере, (не статичных сайтов, если проще говорить).
2. Вы правы, у каждого ЯП свой синтаксис, но ошибаетесь относительно моих требований — строгость и однозначность синтаксиса, есть далеко не во всех ЯП.
3. Тут вы совсем заблуждаетесь. Вот в С, да изначально имелся относительно оптимизированный компилятор, соответствено на нём можно через CGI писать серверную часть высокопроизводительных веб-приложений, и у этого подхода, при использовании С, нет альтернатив. А у PHP, есть альтернативы, для среды исполнения, при этом с разными показателями производительности. (см. пример по этому ЯП, который я дал в комментарии выше).
4. Ключевое слово «почти», т.к. всё же есть только то, под что можно писать только в семействе ОС Windows, из данной облости.
5. Тут вы правы, но нужно учитывать первых 4 фактора, общее сочетание встречаеться достаточно редко, о чём говорит такое неоднозначное отношение к этому вопросу.
To Eol:
Спасибо за корректность применения моей цитаты, вопрос как раз из области абстрактно-метафизического, при этом имеет набор жестких критериев, что не даст ему скатиться в холивар. Так же я не прошу отстаивать вашу позицию, при предложении вашего ЯП, под эти требования. Мне нужно только название языка, а с моим коллегой, мы уже на базе ваших мнений, оценим как он подходит под вышеописанные критерии. Нам именно в этом нужна помощь, для решения спора.
Ну почему же:
Вот пример, НЕ взимоисключающих свойств ЯП, по первым трём пунктам:
1. Процедурный язык, (нет средств для реализации ООП или прочего) = одна парадигма.
2. Все синтаксические структуры, имеет только одну реализацию. (Например логический оператор только if… else, без любой альтернативы, (в частности switch), имеет только по одной встроенной функции, решающей только одну задачу, и т.д.)
3. Изначально имелся высоко оптимизированный или только компилятор или только интерпретатор, позволяющий организовать web приложение, на стороне сервера.
(Классический пример, противоположности этому: PHP, который в зависимости от среды исполнения, например: Apach+php_mod, или же PHP-FPM с eAccelerator работающий с nginx по протоколу FastCGI, будет на одном и том же коде выдавать разное быстродействие и разное потребление ресурсов), что недопустимо для нашего абстрактного языка, у которого только одна среда исполнения или компиляции, причем изначально хорошо оптимизированная.
Извините, за то что не расписал в своём вопросе подобный пример, так с ходу и правдо может показаться что требования в чем то взаимоисключающие.
Мне кажется, имет смысл различать
«Изначально проектировался, как web ЯП»
и
«с заложенными в нём инструментами и средствами для разработки высоконагруженных приложений.»
так под вторую часть определения и прочие пункты (кроме 5) подходит erlang вполне.