Код:
; Кирилл Дубейко ; ; (С) 1997-2012 Все права защищены ; ; Purebasic синтаксис Global Dim Params.s(19) Global par.w Procedure ShellCommandCallBack(Variable$,Function$) Debug "Переменная (Variable) = " + Variable$ Debug "Процедура (Procedure) = " + Function$ Debug "Кол-во Параметров (num parameters) = " + Str(par) For i=1 To par Debug "Параметр "+Str(i)+" = "+Params(i) Next EndProcedure Procedure ShellCommand(Command$) par=1 function$="" kv.b=0 For i=1 To Len(Command$) b$=Mid(Command$,i,1) If b$="(" And function$="" function$=s$ s$="" ElseIf b$=")" And function$="" ProcedureReturn 1 ElseIf (b$="=" Or b$="+") And function$="" And variable$="" variable$=s$ s$="" ElseIf b$="=" And function$="" And variable$="" variable$=s$ s$="" ElseIf (b$="," Or b$=")") And kv=0 And function$ ;Debug s$ + " => "+Str(par) Params(par)=s$ par=par+1 s$="" ElseIf b$=Chr(34); Or b$=Chr(39) ; Игнорирование примеров с "Hello,World!" , тоесть запятой в ковычках kv=1-kv ; Если KV=1 то сделать его 0 , если равно 0 то сделать его 1 s$+b$ ; тут момент,когда ковычки включаются в строку(если надо) Else s$+b$ EndIf Next par-1 ShellCommandCallBack(LTrim(RTrim(variable$)),LTrim(RTrim(function$))) EndProcedure Commande$="result$ = InputRequester(Title$,Message$,"+Chr(34)+"Default,or text"+Chr(34)+")" ; Выглядит так result$=InputRequester(Title$,Message$,"Default,or text") r=ShellCommand(Commande$) If r=0 Debug "" Debug "Процедура составлена синтексически верно" Debug "Worked source! :-)" Else Debug "" Debug "В тексте есть ошибка №"+Str(r) EndIf
Это пример можно использовать как начало для создания языка скриптов, с синтаксисом Basic