Предложения по добавлению возможностей в язык

open source скриптовой язык Orion (аналог PHP) для freepascal / delphi

Модераторы: devels, Модераторы

Ответить
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Предложения по добавлению возможностей в язык

Сообщение devels »

Здесь предлагаю отписываться всем, кто хочет повлиять на язык. Предлагайте свои идеи синтаксических и других возможностей для внедрения в язык.
Аватара пользователя
vada
энтузиаст
Сообщения: 691
Зарегистрирован: 14.02.2006 12:43:17

Сообщение vada »

Хочу множества не ограниченный байтом. Хочу 32 разряда, или 64 для 64-х разрядных процессоров.
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Сообщение devels »

vada писал(а):Хочу множества не ограниченный байтом. Хочу 32 разряда, или 64 для 64-х разрядных процессоров.


Вы не спутали тему с freepascal'eм? Тут про язык Orion.

Понятия как множества в орионе нет, зато есть массивы и оператор in.

Код: Выделить всё

$ch = 4390;
$set = [2030, 4390, 4897, 1023];
if ( $ch in $set ){
   // элемент $ch входит в $set массив
}


А ограничений для массива в 1 байт нет, у него вообще нет ограничений =).
Max Rusov
постоялец
Сообщения: 191
Зарегистрирован: 25.04.2009 15:46:03

Сообщение Max Rusov »

Типизация будет? Отсутствие типов - основной недостаток PHP (imho).
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Сообщение devels »

Max Rusov писал(а):Типизация будет? Отсутствие типов - основной недостаток PHP (imho).


Это не недостаток, типизация отсутствует также в таких языках как Lua, Python, Ruby. Это идеология, в скриптовых языках для прикладных задач она только мешает. В общем тип переменной определяется во время присваивания ей значения.
Max Rusov
постоялец
Сообщения: 191
Зарегистрирован: 25.04.2009 15:46:03

Сообщение Max Rusov »

devels писал(а):Это идеология, в скриптовых языках для прикладных задач она только мешает

Странно слышать это от pascal программиста. Отсутствие типизации кажется преимуществом только при написании
процедурки в несколько строк. Когда у Вас большой проект и надо провести минимальный рефакторинг, то
без типизации эта задача нерешаема в принципе. В PHP, кстати, зачатки типизации есть, и не исключаю,
что ее добавят в будущих релизах.

Конечно, Вам решать. Если Вы изначально не планируете, что этот язык будет использоваться для решения
серьезных задач - то забейте.
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Сообщение devels »

Max Rusov писал(а):
devels писал(а):Это идеология, в скриптовых языках для прикладных задач она только мешает

Странно слышать это от pascal программиста. Отсутствие типизации кажется преимуществом только при написании
процедурки в несколько строк. Когда у Вас большой проект и надо провести минимальный рефакторинг, то
без типизации эта задача нерешаема в принципе. В PHP, кстати, зачатки типизации есть, и не исключаю,
что ее добавят в будущих релизах.

Конечно, Вам решать. Если Вы изначально не планируете, что этот язык будет использоваться для решения
серьезных задач - то забейте.


Писал я большой проект - develstudio на php без типизации, никакая типизация мне была не нужна, и максимум ошибок с типизацией было 1% из общего числа. Так что там не несколько процедур, а целая система, очень гибкая кстати с мощной системой плагинов. Написана масса CMS на php, например огромный по масштабам 1C-Bitrix. В общем это другой подход в программировании, ни чем не хуже.

Разработчики PHP никогда не добавят жесткую типизацию, как в паскале или в аде, и даже в си++. Возможно отсутствие типизации пугает людей со времен basic, но это лишь от не знания типизации php.

Такие серьезные языки как ruby, python и lua тоже отказались от строгой типизации, у них конечно по строже - утиная типизация.
Max Rusov
постоялец
Сообщения: 191
Зарегистрирован: 25.04.2009 15:46:03

Сообщение Max Rusov »

Как знаете, спорить не буду. Но лично я никогда не выберу для серьезного проекта язык, который не осуществляет контроль типов.
Аватара пользователя
stikriz
энтузиаст
Сообщения: 612
Зарегистрирован: 15.03.2006 08:37:47

Сообщение stikriz »

Да, что там контроль типов...
Просто contrl/пробел и посмотреть что там в параметре передаваемом функции, например...
Только на этапе выполнения. Если код весь твой, то наверное ты что-то там припоминаешь, а если чужой?
Так что, не надо - без нормальной типизации нет скорости разработки, возрастает сложность лавинообразно и т.д. и т.п.
Даже в бейсиках нормальные программисты типизируют переменные.
Я вообще считаю, что отказ от типизации, или если она кому-то мешает, то это уже архитектурные косяки в проекте.
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Сообщение devels »

stikriz писал(а):Да, что там контроль типов...
Просто contrl/пробел и посмотреть что там в параметре передаваемом функции, например...
Только на этапе выполнения. Если код весь твой, то наверное ты что-то там припоминаешь, а если чужой?
Так что, не надо - без нормальной типизации нет скорости разработки, возрастает сложность лавинообразно и т.д. и т.п.
Даже в бейсиках нормальные программисты типизируют переменные.
Я вообще считаю, что отказ от типизации, или если она кому-то мешает, то это уже архитектурные косяки в проекте.


Ну типизировать передаваемые параметры в функцию в php можно. Вообще можно вопрос с типизацией закрыть. Если нужна типизация берите PascalScript. Я не припомню ни один динамический язык со строгой типизацией. Отказ от типизации в компилируемом языке это косяки в проекте, но не в скриптовом. Просто скриптовой язык итак является run-time, и в любом случае даже ошибки типизации в нем будут являться ошибками в run-time.

Я просто имею большой опыт программирования на жестко типизированном паскале, так и на не-типизированном php и могу адекватно сравнивать.

P.S. Всякие системы для документирования хорошо справляются с подсказками, какие типы нужно передавать в функцию и что она делает.
Аватара пользователя
hinst
энтузиаст
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Сообщение hinst »

я предлагаю добавить возможность не писать уже наконец вонючий знак доллара возле каждой переменной :shock:
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Сообщение devels »

hinst писал(а):я предлагаю добавить возможность не писать уже наконец вонючий знак доллара возле каждой переменной :shock:


Относительно это уже работает для статических свойств классов, а также при объявлении свойств класса, можно писать без доллара.

Код: Выделить всё

class X {
    var x = 20;
    var y = 40;
}


вместо

Код: Выделить всё

class X {
    var $x = 20;
    var $y = 40;
}
Max Rusov
постоялец
Сообщения: 191
Зарегистрирован: 25.04.2009 15:46:03

Сообщение Max Rusov »

Еще в PHP крайне не нравится необходимость писать "$this->" при обращении к свойствам класса. Ваша реализация свободна от этого недостатка?
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Сообщение devels »

Max Rusov писал(а):Еще в PHP крайне не нравится необходимость писать "$this->" при обращении к свойствам класса. Ваша реализация свободна от этого недостатка?


Пока нет. Но возможно можно будет опускать $this, и писать так "->prop".
famous
незнакомец
Сообщения: 3
Зарегистрирован: 06.07.2011 13:25:48

Сообщение famous »

padremortius: Нарушение пункта 1.2 правил форума.
Ответить