2015-03-12 3 views
0

Ну название может быть немного обманчивым, пожалуйста, исправьте меня, если вы можете привести название лучше к делу.Язык дизайна: конец строки строки строки

Итак, я сейчас экспериментирую с языком программирования. Я определил базовый синтаксис и написал довольно простой парсер несколько месяцев назад. Сегодня я хотел продолжить проект, но через некоторое время было что-то вроде синтаксиса, который беспокоил меня.

Конец заявления

Когда я начал проект, я думал, что с помощью переносы строк в конце заявления было бы неплохо. Просто так:

public fnc addPerson: Person personInstance 
{ 
    [this.collection.add: personInstance] 
    return this 
} 

Теперь сегодня я думаю, что это будет выглядеть и упал намного лучше, используя который с запятой также позволило бы положить все вещи в одной строке.

public fnc addPerson: Person personInstance 
{ 
    [this.collection.add: personInstance]; return this; 
} 

Мне очень интересно, что же от цели (не технические) точки зрения плюсы и против тех?

Я имею в виду, что использование переломов строк заставит разработчика (по крайней мере, немного) написать чистый код. Но это делает вещь довольно негибкой.

  • В каких проблемах вы, вероятно, столкнетесь (как пользователь этого языка), используя конец строки заявления?
  • Какие языковые ограничения могут быть приняты с использованием разрывов строк или точек с запятой?

ответ

1

У нас было все это раньше, с ассемблером, RPG, Cobol и различными другими табличными языками, где терминаторы линий были значительными. Сложнее писать компиляторы для. Нам не нужно туда возвращаться.

Когда это было сделано впервые, все осознали необходимость индикатора продолжения инструкции, чтобы вы могли разбить заявления на несколько строк. Теперь, когда Scala et al. вновь представили это, что они забыли эту часть, поэтому становится невозможным представить длинные заявления в приемлемом формате.

Неплохая идея. Пробел - это пробел, а не синтаксис.

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

Большая проблема с использованием разделителя строк в качестве новой строки заключается не в том, что вы не можете писать несколько операторов на одной строке (вы не должны этого делать, это слишком легко пропустить важную часть кода).

Проблема в том, что трудно записать одно длинное заявление на несколько строк. Для языка, где это становится проблемой, взгляните на JavaScript и его автоматическую точку с запятой.

Смежные вопросы