Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.12;
Скачать: CL | DM;

Вниз

Язык, который всем нравится...   Найти похожие ветки 

 
ArtemESC ©   (2006-10-20 14:15) [0]

Что должно быть в таком языке (программирования)?


 
vidiv ©   (2006-10-20 14:16) [1]

Телепатор =)


 
Gero ©   (2006-10-20 14:18) [2]

Именно.


 
Sergey13 ©   (2006-10-20 14:18) [3]

Мат. 8-)


 
Johnmen ©   (2006-10-20 14:21) [4]


> Язык, который всем нравится...


Размечтался....


 
ZeroDivide ©   (2006-10-20 14:24) [5]

Телепатор телепатора!


 
Jeer ©   (2006-10-20 14:25) [6]

Такой тепленький, ласковый, мягкий - ну все-все чтоб умел.


 
unknown ©   (2006-10-20 14:28) [7]


> ArtemESC ©   (20.10.06 14:15)
> Что должно быть в таком языке (программирования)?

Что бы на таком языке можно было сказать компьютеру
"Хочу к завтрему ERP. и штоб без глюков!"
и он все сделал :)


 
Virgo_Style ©   (2006-10-20 14:28) [8]

"
- Как написать неработоспособного монстра?
- Воспользоваться всеми этими советами одновременно!
"
(c)


 
MBo ©   (2006-10-20 14:31) [9]

схожая тема ;)
http://forum.sources.ru/index.php?showtopic=146913


 
ZeroDivide ©   (2006-10-20 14:32) [10]

А еще очень нужен фреймворк для фреймворков или может фреймворк фреймворков для фреймворков.


 
Anatoly Podgoretsky ©   (2006-10-20 14:37) [11]

Язык программирования 10 поколения

Пользователь компилятору - "Хочу базу данных!"

Компилятор пользователю - "Сделано, ошибки будем исправлять?"

Пользователь компилятору - "Хочу чтобы работала!"<BR>

Язык программирования 11 поколения

Компилятор пользователю - "Довай я может базу данных сделаю а ?"

Пользователь компилятору - "Делай что хочешь только меня нетрогай"


 
Rule ©   (2006-10-20 14:44) [12]

чтоб голосом говоришь а он все далет, типа "хочу запуздырить иконку в трей" и он это делает :-)


 
Ганна Юхимівна   (2006-10-20 14:55) [13]

Сам факт знакомства с данным языком должен приносить деньги... без программирования.


 
Тульский ©   (2006-10-20 14:59) [14]

и кнопка "Косяк"


 
Карелин Артем ©   (2006-10-20 15:04) [15]

Сексуальная супермодель. Живая и приносящая утром кофе на блюдечке.


 
Слоник_   (2006-10-20 15:05) [16]

да ну вас =)
c# - лучше пока ничем не пользовался


 
Rule ©   (2006-10-20 15:07) [17]

Слоник_   (20.10.06 15:05) [16]
а пробовал вообще чемто кроме этого пользоваться ???


 
DrPass ©   (2006-10-20 15:08) [18]


> Anatoly Podgoretsky ©   (20.10.06 14:37) [11]

Мог бы просто ссылку на свой сайт кинуть :)


 
Слоник_   (2006-10-20 15:11) [19]


> Rule ©   (20.10.06 15:07) [17]

ну да, паскаль тот же =)
на c++ писал. пока учился - были студенческие поделки на c и asm.
/*холиварить не буду и других отговариваю*/


 
TUser ©   (2006-10-20 15:16) [20]

> MBo ©   (20.10.06 14:31) [9]

Про философский камень зря они там. Я даже формулу могу написать - Ag[AuCl4]


 
Anatoly Podgoretsky ©   (2006-10-20 16:10) [21]


> Мог бы просто ссылку на свой сайт кинуть :)

Мог бы, но статья в защищенном месте, его надо знать, но могу посказать
http://www.podgoretsky.com/old


 
StriderMan ©   (2006-10-20 16:29) [22]


> Ганна Юхимівна   (20.10.06 14:55) [13]
> Сам факт знакомства с данным языком должен приносить деньги.
> .. без программирования.

Oracle


 
Rule ©   (2006-10-23 12:13) [23]

StriderMan ©   (20.10.06 16:29) [22]
не не оракл, а разные приблуды к R3, типа Axapta


 
euru ©   (2006-10-23 13:38) [24]


> Rule ©   (23.10.06 12:13) [23]
В R/3 нет приблуды Axapta :)


 
kaif ©   (2006-10-24 14:52) [25]

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

Указал настройку  компилятору типа:

 Pointer = array[0..3] of byte или
 Pointer = array[0..7] of byte.

И еще хороший язык должен легко читаться и в нем должно быть запрещено в with перечислять более 1 объекта.

Хороший язык должен позволять создавать произвольно объекты как на стеке, так и и в куче, иметь однопроходный компилятор (как Object Pascal), и не превращать ООП в религию (как Java). Иметь мощный оператор цикла (как в C++ и Java) и простой switch без всяких break (как case в Pascal). Поддерживать множества хотя бы до 256 элементов, как Pascal, и алгебраические операции над ними.
Хороший язык должен иметь модульную структуру, когда в одном модуле можно рамещать более 1 класса и называть модули (файлы) произвольно (как это сделано в Pascal и C++, но не в Java).
Операторные скобки должны быть {}, а угловые скобки <> не должны в синтаксисе употребляться вовсе, так как они затрудняют чтение текстов и публикацию их в интернете.

Все это ИМХО, разумеется.


 
MacroDenS ©   (2006-10-24 14:55) [26]

русский + русский полуматерный


 
zdm ©   (2006-10-24 15:05) [27]


> MacroDenS

И получим 1С :)


 
zdm ©   (2006-10-24 15:07) [28]

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


 
Bless ©   (2006-10-24 15:13) [29]


> kaif ©   (24.10.06 14:52) [25]
>  и простой switch без всяких break


Тогда такую крутизну не сделаешь:
void send(int* to, int* from, int count){
 int n = (count+7)/8;
 switch(count%8){
 case 0: do {   *to++=*from++;
 case 7:        *to++=*from++;
 case 6:        *to++=*from++;
 case 5:        *to++=*from++;
 case 4:        *to++=*from++;
 case 3:        *to++=*from++;
 case 2:        *to++=*from++;
 case 1:        *to++=*from++;
            } while(--n>0);
}


:)


 
Bless ©   (2006-10-24 15:14) [30]

Ошибка вкралась. Исправляюсь.
void send(int* to, int* from, int count){
 int n = (count+7)/8;
 switch(count%8){
   case 0: do {   *to++=*from++;
   case 7:        *to++=*from++;
   case 6:        *to++=*from++;
   case 5:        *to++=*from++;
   case 4:        *to++=*from++;
   case 3:        *to++=*from++;
   case 2:        *to++=*from++;
   case 1:        *to++=*from++;
            } while(--n>0);
 };
}


 
euru ©   (2006-10-24 15:43) [31]


> kaif ©   (24.10.06 14:52) [25]
Практически C# :)


> должно быть запрещено в with перечислять более 1 объекта
И всё-таки вместо запрета лучше позволить объектам в with назначать алиасы.

Ещё неплохо было бы наличие многомерных case (switch). Например:
case a, b of
   (1, 2), (5, 3): do12_53(); // выполнить при a=1, b=2 или a=5, b=3
   (nil, 3): do_3(); // выполнить при a=любое, b=3
   (5, nil): do5_(); // выполнить при a=5, b=любое
end;


Вместо двух циклов (с пред- и постусловиями) и конструкции, эмулирующей цикл с условием в теле цикла, ввести один
repeat begin
   ...
   {check <условие> [continue];}
   ...
end;


 
Anatoly Podgoretsky ©   (2006-10-24 16:36) [32]


> Операторные скобки должны быть {},

Со всем согласен, кроме этого, хороший язык не должен использовать всякие магические значки, он должен быть строгим и понятным не профессионалу. Как минимум он должен допускать литеральную заменую подобного безобразия. А лучше полностью настраиваемый синтаксис языка, может мне синтаксис Лиспа или Форта нравится?


 
kaif ©   (2006-10-24 16:47) [33]

euru ©   (24.10.06 15:43) [31]
> должно быть запрещено в with перечислять более 1 объекта
И всё-таки вместо запрета лучше позволить объектам в with назначать алиасы.


Великолепная идея, между прочим.
Особенно если учесть тот факт, что with действительно кривой какой-то.
Допустим мне удобно использовать и я всегда использую (в отличие от некоторых клерикалов!) with в таких местах:

with MyQuery do
begin
 Close;
 ParamByName("...").AsInteger := ...;
 ParamByName("...").AsInteger := ...;
 ...
 Open;
end;

Однако допустим мне нужно передать указательна Query в качестве параметра в мою процедуру. Фингушки. Я не знаю как это сделать внутри with (может я чего-то не знаю - тогда извините)
 Но мне приходится писать что-то вроде:

with MyQuery do
begin
 Close;
 MyProcedure(MyQuery);
 ParamByName("...").AsInteger := ...;
 ParamByName("...").AsInteger := ...;
 ...
 Open;
end;


Что, ИМХО, некрасиво, глупо и чревато.
Хорошо хотя бы self имеется и спасает в каких-то ситуациях (не этой). :(

А  с алиасом было бы прекрасно. Я бы передал в таком случае алиас, как указатель на свой объект, который в with:

with MyQuery alias m do
begin
 Close;
 MyProcedure(m);
 ParamByName("...").AsInteger := ...;
 ParamByName("...").AsInteger := ...;
 ...
 Open;
end;


 
kaif ©   (2006-10-24 16:49) [34]

Совсем четко было бы так:

with MyQuery alias m do
begin
m.Close;
MyProcedure(m);
m.ParamByName("...").AsInteger := ...;
m.ParamByName("...").AsInteger := ...;
...
m.Open;
end;


 
guav ©   (2006-10-24 16:56) [35]

> в нем должно быть запрещено в with перечислять более 1 объекта.

да ! а лучше - запрещено в with перечислять более 0 объектов.
в бейсике хорошо придумали, что к объекту в with всё равно явный доступ через оператор .


> [34] kaif ©   (24.10.06 16:49)
> with MyQuery alias m do
> begin
> m.Close;


И оказывается что никакой with не нужен, а m - обывкнвенная переменная.


> и не превращать ООП в религию

да ! В частности, язык должен иметь нормалиный finally, а не как С++ .


 
Anatoly Podgoretsky ©   (2006-10-24 17:00) [36]

var
 M: ..
create
with m do
begin


 
Celades   (2006-10-24 17:07) [37]


> да ! В частности, язык должен иметь нормалиный finally,
> а не как С++ .

В С++ есть автоматические деструкторы, а они круче!


 
guav ©   (2006-10-24 17:13) [38]

> [37] Celades   (24.10.06 17:07)



> В С++ есть автоматические деструкторы

Вот я как раз об этом:
и не превращать ООП в религию


> [37] Celades   (24.10.06 17:07)


> а они круче!

у сишных деструторов два существенных недостатка: не вызываются гарантированно и нет стандартного общего для всех виртуального деструктора.


 
Bless ©   (2006-10-24 17:16) [39]


> Celades   (24.10.06 17:07) [37]
>
> В С++ есть автоматические деструкторы, а они круче!


Не в первый раз слышу этот довод, но еще ни разу не спрашивал:
а если мне в finally нужно выполнить действия, не связанные с освобождением ресурсов, автоматический деструктор тоже поможет?


 
Celades   (2006-10-24 17:19) [40]


> у сишных деструторов два существенных недостатка: не вызываются
> гарантированно и нет стандартного общего для всех виртуального
> деструктора

Это их достоинство. Если мне не ужно такое поведение я ливо сом котролирую время жизни объекта(new/delete), либо делаю метод Free(по аналогии с Delphi) и вызываю его сам у стековых объектов.



Страницы: 1 2 вся ветка

Текущий архив: 2006.11.12;
Скачать: CL | DM;

Наверх




Память: 0.57 MB
Время: 0.033 c
6-1151325940
N
2006-06-26 16:45
2006.11.12
Неприятности с IdHTTPServer-ом


3-1158300383
vodvorezlaya
2006-09-15 10:06
2006.11.12
как сделать редактируемую только текущую строку DBGrid


2-1161187684
Благодарный слушатель
2006-10-18 20:08
2006.11.12
Помогите работать с TImage


2-1161891637
---------
2006-10-26 23:40
2006.11.12
Оптимизация кода


3-1158059416
___oleg
2006-09-12 15:10
2006.11.12
Access - как отличить полную дату от неполной