Форум myROBOT.ru » Образовательные проекты » GameLOGO » О фигурных скобках

Страниц (2): [1] 2 »
 

1. cjA - 04 Сентября, 2010 - 22:35:59 - перейти к сообщению
а зачем фигурные скобки?
(раз уж тема популярная) лет 50 назад когда Си придумывали - они были нужны: и для экономии памяти и чтобы компилятор быстрее работал.
А сейчас?

Разве не логичьнее напмсать

повторить 10 раз
.
.
.
повторять до этого места.

При современных мощьностях ни памяти ни быстродействия это много не заберет.
2. Admin - 05 Сентября, 2010 - 10:57:04 - перейти к сообщению
Операторные скобки в явном виде присутствуют в классическом Лого. Полностью от них отказываться и перейти к неявному виду нет особого резона.

Совмещение стилей синтаксических конструкций призвано облегчить в дальнейшем переход к другим языкам программирования. Фигурные скобки Си-образного синтаксиса являются одним из самых популярных способов организации операторных скобок в большом количестве современных языков.

Синтаксис, присутствующий в GameLogo, в первую очередь сформирован именно для цели облегчения в дальнейшем перехода к другим языкам высокого уровня. Сам GameLogo является очень простой средой, предназначенной лишь для первоначального знакомства с программированием. И именно в силу этого, вопрос легкого перехода к другим языкам стоит во главе угла.
3. cjA - 05 Сентября, 2010 - 17:07:57 - перейти к сообщению
(я конечно в этом не разбираюсь)

Но ведь это для детей, а не для будущих Сишников?
подсказка: В моем языке было так [...{(...)}] или так ({...[]...})
МО США пишет на Ада, большинство офисных компьютеров- Wintel + VB, почти вся российская бухгалтерия- 1С. Где тут скобки то фигурные?

да у самих линуксоидов уже куча языков напридумывано без всяких скобок.
Какоето идолопоклонство перед демоном по имени Си. Подшучивать, дразнить

(я ничего против не имею, ваш язык, что хотите то и делайте- но не логично)
4. Admin - 05 Сентября, 2010 - 20:13:38 - перейти к сообщению
Языки, имеющие Си-образный синтаксис, являются наиболее распространенными и востребованными и их рано сбрасывать со счетов, если вообще стоит.

В авторитетном TIOBE Programming Community Index (янв. 2010) на первых местах

Java, C, C++, PHP (все имеют си-образный синтаксис)

на 5-м месте Visual Basic

еще в десятку индекса от TIOBE с си-образным синтаксисом входят C#, Perl, Objective-C.

У Велтона Visual Basic на 10-м месте.

Довольно интересный рейтинг, сос тавленный на основе stackoverflo w.com , вообще не имеет Visual Basic в десятке и выглядит так:

c# — 65974
java — 37323
php — 30389
javascript — 27256
c++ — 24215
python — 19403
sql — 16553
ruby — 15055
c — 10419
objective-c — 8781
5. cjA - 05 Сентября, 2010 - 21:46:40 - перейти к сообщению
повторять 10 {

от круглых скобок отказались, а от фигурных не можем?

опрос был повидимомому среди профессиональных программистов. А интересно что сказалибы дети- для них фигурная скобка- только потому что папа сказал её ставить.

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

я уж не говорю про вербальное программирование, к этому ведь постепенно идем?
"повторяй десять раз левая фигурная скобка"- так что-ли?

(помоему на этом сайте один человек сказал что жалеет что начал знакомство с МК с изучения Си.)
6. Admin - 05 Сентября, 2010 - 22:33:24 - перейти к сообщению
Видимо, Вы не совсем поняли предыдущие ответы. В них объяснены причины существования фигурных скобок в GameLogo. Отказываться от них никто не собирается. И на это есть ряд очень веских причин.

Кроме того, дети понимают принцип использования операторных скобок в программировании практически вне зависимости от того, какой синтаксический стиль используется. Изобретать велосипед в данном случае не имеет смысла. В GameLogo представлены различные синтаксические конструкции для знакомства и лучшего освоения того, как реализуются операторные скобки в программировании.

Простите, но суть Вашего последнего сообщения я уловить не смог.

Про вербальное программирование я ничего не слышал и не представляю, где оно используется.
7. cjA - 05 Сентября, 2010 - 22:56:57 - перейти к сообщению
но ведь basic обходится без них?
зачем менять begin, loop или then на одну фигурную скобку?
веские причины были пятьдесят лет назад когда каждый байт памяти учитывался. И такт процессора идущий на интерпретацию такого длинного (по тем временам) слова как begin.
а сейчас то зачем? ради скорости написания программы? конструкция вроде i++ реально быстрее чем i=i+1, но сейчас то это зачем, для современных процессоров?
Ну и сами Вы говорите что детям все равно как выглядят операторные скобки- вот я и говорю-, почему бы компьютер на научить понимать человеческий язык, а не плясать под его дудку. Ведь научили Вы gamelogo понимать русский?
задефайните Вы definе begin {
- ничего не изменится, а понять проще.
Ребенку, профессиональному то программисту без разницы, я не спорю.
(Добавление)
В if (...) {
и в while (...) {
совершенно разные по смыслу скобки и наверное логично было бы еслибы они и выглядели визуально по разному ?
8. nest - 05 Сентября, 2010 - 23:08:54 - перейти к сообщению
cjA, так сделано потому что.
Предназначение среды - для развития алгоритмического мышления, а как там оно описывается - хоть квадратиками или скобками.
Смиритесь :)
9. cjA - 05 Сентября, 2010 - 23:15:02 - перейти к сообщению
хорошо, пусть квадратиками, но then и loop - совершенно разные алгоритмические конструкции, так зачем путать ребенка?

Смиряюсь, что остается, для вас всё что не ноль, всё правда. Улыбка
(Добавление)
самое забавное что у себя в препроцессоре никаких фигурных скобок у Си нет и даже
#endif положено писать. Почему бы это?
10. Admin - 05 Сентября, 2010 - 23:18:20 - перейти к сообщению
cjA пишет:
но ведь basic обходится без них?


Basic не обходится без операторных скобок. Более того, они у него очень выражены.

И он в них вечно путается. Вот простейший пример. Обратите внимание на сообщение об ошибке и на листинг программы.



А теперь представьте, каково ребенку найти ошибку. Он смотрит на листинг своей программы. Видит, что for у него есть и ничего понять не может.

cjA пишет:
веские причины были пятьдесят лет назад когда каждый байт памяти учитывался. И такт процессора идущий на интерпретацию такого длинного (по тем временам) слова как begin.


Все это, мягко говоря, не соответствует истине.


cjA пишет:
задефайните Вы definе begin {
- ничего не изменится, а понять проще.


Поверьте, это совершенно голословное утверждение.

cjA пишет:
В if (...) {
и в while (...) {
совершенно разные по смыслу скобки и наверное логично было бы еслибы они и выглядели визуально по разному ?


Судя по всему, Вы даже не заглядывали в синтаксис GameLogo, а пытаетесь навязать дискуссию.
11. cjA - 05 Сентября, 2010 - 23:20:11 - перейти к сообщению
да ничего я не навязываю.
просто если улучшать бэйсик, то точно не с помощью си. прелесть си вовсе не в том чтобы вместо слова из пяти букв написать один непонятный значок.

мне хватило примеров в этой ветке.
и я просто спросил- почему так. правильный ответ повидимуму действительно "потому"
12. andy - 06 Сентября, 2010 - 16:51:14 - перейти к сообщению
Написание фигурных скобок требует переключения раскладки клавиатуры.
Это не сильно приятно при условии что все остальное русскоязычное.

Поэтому иметь эквивалент например {=НАЧАЛО, }=КОНЕЦ то есть кому удобно пусть пишет фигурные, кому нет остается в русскоязычной раскладке. И овцы сыты и пастух довольный...
13. cjA - 06 Сентября, 2010 - 17:31:01 - перейти к сообщению
я же помню что ничего не создавал.
да вообще эта тема чистофлудильная, можно и стереть

хотя аргумент andy тоже кстати имеет смысл, в си это хоть можно задефайнить было.
только не "начало" и "конец", а "начать" и "закончить".
14. Admin - 06 Сентября, 2010 - 21:44:52 - перейти к сообщению
andy пишет:
Написание фигурных скобок требует переключения раскладки клавиатуры.
Это не сильно приятно при условии что все остальное русскоязычное.


Да, это действительно проблема и головная боль. Неудобно даже при том, что для фигурных скобок слева сделаны кнопки для быстрого ввода.
Один из вариантов - сделать горячее сочетание клавиш.
Хотя у этой проблемы есть и один плюс: дети имеют тренинг в переключении раскладки клавиатуры.

andy пишет:
Поэтому иметь эквивалент например {=НАЧАЛО, }=КОНЕЦ


Религия не позволяет: очень отдает Алголом, Паскалем и Ершолом. Смущение

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

Возможно, даже сделать НАЧ и КОН, чтобы окончательно сделать синтаксис аутентичным. Помираю со смеху
15. cjA - 11 Сентября, 2010 - 23:43:04 - перейти к сообщению
нужно заметить что вне вопроса gamelogo этот спор смысла не имеет

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

(какова же будет радость ребенка когда вместо нудных НАЧ и КОН он узнает что можно просто будет ставить { или } )