
Сообщение от
ZEK
Код:
VAR
a*:CHAR;
b*:INTEGER;
записывается как
Код:
extern char a, int b;
У господина не было проблем с совместимостью знаковых и беззнаковых char? О, если нет, то Вы явно мало работали на Си. Кроме того, скажите:
Код:
extern int a, char *b, c, *d, char* e, f;
Вы сходу сообразите где что к чему относится? b и c – это оба указатели? а d – указатель или указатель на указатель? А e? А f – это char или указатель на char? Я понимаю, Вы напряжёте мозг и таки догадаетесь, но зачем. Если есть более удобная форма записи. А накапливающийся груз от перенапряжения на мозг в больших проектах ощущали?
Я здесь присутствующим собираюсь ДОКАЗЫВАТЬ, что их обвинения в моём незнании Си просто смешны. Я вынужден вести такие войны, хотя видит бог как я устаю от таких как Вы на этом и других форумах.
Я предлагаю быть творческими личностями с творческим подходом, и уважать друг друга. А здесь мы обсуждаем не победу Оберонов над мэйнстримом, а всего лишь разработку на Обероне для Спека. А Вы пришли здесь троллить, ничего не сказав по теме, и являетесь для меня и тех, кому нравятся мои посты, просто деструктивным элементом. Успокойтесь, ничто Вашему мэйнстриму не угрожает.
Кстати, Вам будет приятно узнать, что один из архитекторов платформы .NET и Visual Studio – ученик Вирта и оберонщик Клеменс Шиперски (Clemens Szyperski), один из основателей компании Oberon microsystems. Тоже кушать захотел и двигать большие дела.
http://research.microsoft.com/~cszypers/
http://www.inr.ac.ru/~info21/info/ob...crosystems.htm
она их переросла еще в школе во время изучения Тurbo Pascal 3.
Вот Вам турбопаскаль. И вот. И ещё вот. Такое делают умные оберонщики, которым надоела искусственно раздутая сложность технологий.
http://sage.com.ua/ru.shtml?e1l9
http://sage.com.ua/ru.shtml?e1l5
http://sage.com.ua/ru.shtml?e1l6
http://sage.com.ua/ru.shtml?e1l3
http://sage.com.ua/ru.shtml?e1l8
Теперь буду рад увидеть в ответ нечто подобное, но что сделали Вы. Для Спека или нет, неважно.
Кстати, первая ссылка это Вольфейнштейн на Обероне. Alone, знаю, ты любишь такие штучки, зацени.

Сообщение от
alone
По поводу if(a=b): все нормальные компиляторы выдают ворнинг.
1. Не все нормальные компиляторы выдадут ворнинг. Это нормальная себе конструкция в языке Си, разрешённая. Вот в GCC ворнинги по умолчанию вообще выключены, их надо включать, например, командой -Wall
2. Если даже ворнинг и включен, то реально его просто не заметить в общей куче других ворнингов. А в среднего размера проектах их количество огромно. И исправить ворнинги полностью никто не пытается, хотя бы потому что их добрая половина – в стандартных заголовочных файлах, куда шаловливые ручонки всё же не лезут.
Я понимаю, привыкнуть можно. Вон Аллен Голуб такой талмудище “Как ходить по минному полю Си, почти ничем не рискуя” написал. Советует в целях снижения риска писать вместо:
if(a==2)
if(2==a)
Чтобы, если вдруг опечатался, компилятор уж точно это не прохавал. Ну что ж. Это хорошее чтиво вдобавок к мэйнстрим-средствам разработки. Но в Оберонах нельзя написать:
И это правильно, господа. Так и должно быть. Поэтому байки об архаичности BEGIN и VAR будем считать оправданием своего невежества. Кстати, многие из здешних даже не знают что сделано хорошего в Обероне по сравнению с Паскалем в плане убирания лишних BEGIN. К скобкам очень привыкли, уже от чего-то другого начинает колбасить.