Sponsored Content
Full Discussion: Syntax error in tcl/tk code
Top Forums Programming Syntax error in tcl/tk code Post 302357518 by milindb on Wednesday 30th of September 2009 04:22:53 AM
Old 09-30-2009
Question Syntax error in tcl/tk code

Hi All,
I have written a code in tcl which is supposed to open an GUI in which numbers will be entered & after performing selected operation it wil show a result.

Code:
 
#!/usr/local/bin/wish
#package require Tk
#global opr 
proc DoOperation {} {
global opr
set fstno [ .entno1 get]
set scdno [ .entno2 get]
set result [expr {$fstno  $opr  $scdno}] 
.entres insert 0 $result
}
proc AddOpr {} {
set opr +
}
proc SubOpr {} {
set opr -
}
proc MulOpr {} {
set opr *
}
proc DivOpr {} {
set opr /
}
 
###Creation on widgets
wm title . "Wants to create Calculator"
frame .frm
label .labno1 -text "Enter First Number Here: "
label .labno2 -text "Enter Second number Here: "
label .labres -text "Result is : "
entry .entno1
entry .entno2
entry .entres
button .butadd -text "+" -width 4 -command "AddOpr"
button .butneg -text "-" -width 4 -command "SubOpr"
button .butmul -text "*" -width 4 -command "MulOpr"
button .butdiv -text "/" -width 4 -command "DivOpr"
button .butcalc -text "CALCULATE" -command "DoOperation" 
button .butext -text "EXIT" -command {exit}
###setting widgets 
#grid .but1 
grid .labno1 -in .frm -row 1 -column 1 -sticky w 
grid .labno2 -in .frm -row 2 -column 1 -sticky w
grid .labres -in .frm -row 3 -column 1 -sticky w
grid .entno1 -in .frm -row 1 -column 2 -sticky e
grid .entno2 -in .frm -row 2 -column 2 -sticky e
grid .entres -in .frm -row 3 -column 2 -sticky e
grid .butadd -in .frm -row 4 -column 1 -padx "0 65" -pady "5 5" 
grid .butneg -in .frm -row 4 -column 1 -padx "65 0" -pady "5 5" ;# -columnspan 2
grid .butmul -in .frm -row 4 -column 2 -padx "0 65" -pady "5 5";# -columnspan 2
grid .butdiv -in .frm -row 4 -column 2 -padx "65 0" -pady  "5 5"
grid .butcalc -in .frm -row 5 -column 1 -columnspan 1 -pady  "5 5"
grid .butext -in .frm -row 5 -column 2 -columnspan 2 -pady  "5 5"
pack .frm

Error I am getting is-
Code:
 
syntax error in expression "$fstno  $opr  $scdno": extra tokens at end of expression
syntax error in expression "$fstno  $opr  $scdno": extra tokens at end of expression
    while executing
"expr {$fstno  $opr  $scdno}"
    (procedure "DoOperation" line 5)

This is the first program I have created after completing my basic training of TCL/Tk so pls forgive me for silly mistakes.

Help appreciated in resolving this error.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

awk Shell Script error : "Syntax Error : `Split' unexpected

hi there i write one awk script file in shell programing the code is related to dd/mm/yy to month, day year format but i get an error please can anybody help me out in this problem ?????? i give my code here including error awk ` # date-month -- convert mm/dd/yy to month day,... (2 Replies)
Discussion started by: Herry
2 Replies

2. Shell Programming and Scripting

why is this code generating syntax error?pls help

#!/bin/sh copy() { source=`stat -c %s $1` dest=0 cd $2 while ;do cp $1 $2 & pct=`((100 * $dest) / $source )` dest=`dest+1` echo -en ".$pct%\b\b\b" sleep 1 done } echo "starting now" copy /file1 /tmp (3 Replies)
Discussion started by: wrapster
3 Replies

3. AIX

nim mksysb error :/usr/bin/savevg[33]: 1016,07: syntax error

-------------------------------------------------------------------------------- Hello, help me please. I am trying to create a mksysb bakup using nim. I am geting this error, how to correct it ? : Command : failed stdout: yes stderr: no... (9 Replies)
Discussion started by: astjen
9 Replies

4. Shell Programming and Scripting

Need help line 35: syntax error: unexpected end of file only 34 lines of code

I am not sure what I am doing wrong here, I did some research and only confused myself further. Any help would be greatly appreciated. I need to make this work for work tomorrow. There are only 34 lines of code in this script, yet its complaining about line 35 Here is the code: ... (7 Replies)
Discussion started by: BkontheShell718
7 Replies

5. Shell Programming and Scripting

Syntax error calling TCL script from shell script

hello everyone i am beginner on shell scripting .and i am working on my project work on ad hoc network i wrote a batch (.sh) to do a looping and execute a tcl script i wrote before in each iteration ..but i got this problem " syntax error near unexpected token `('... (1 Reply)
Discussion started by: marcoss90
1 Replies

6. Shell Programming and Scripting

Need help with TCL code to find IP address from a URL

Need help with a a tcl code. Need to find out the ip address from a URL if it is present to do some activity. The URLs will be of the form <domain>?a=12345&d=somestring1(Note: c not present) <domain>?c=10.10.10.100&d=somestring1 <domain>?a=12345&b=somestring1&c=10.1.2.4&d=somestring2... (1 Reply)
Discussion started by: ampak
1 Replies

7. UNIX for Advanced & Expert Users

Error in tcl script

hi all , i am trying to link a file with another file present in some other location in tcl shell. This is the way i am doing it if {} { file link /data/athena_dev/tanvi/tcl/tanvi.log "/data/athena_dev/tanvi/tanvi.tcl" } I am getting the error that /data/athena_dev/tanvi/tcl/ta nvi.log... (1 Reply)
Discussion started by: harjinder
1 Replies

8. Shell Programming and Scripting

TCL: syntax error in expression with "*"

I'm using tcl scripts in ns2 ( network simulator) through cygwin. It works fine , however, I downloaded an example when i run it , I got the following syntax error: syntax error in expression with " *2" : unexpected operator * while executing : "expr $bw *2" invoked from within: "$ns... (1 Reply)
Discussion started by: ENG_MOHD
1 Replies

9. Shell Programming and Scripting

IF section problem. syntax error: unexpected end of file error

Hello, I have another problem with my script. Please accept my apologies, but I am really nooby in sh scripts. I am writing it for first time. My script: returned=`tail -50 SapLogs.log | grep -i "Error"` echo $returned if ; then echo "There is no errors in the logs" fi And after... (10 Replies)
Discussion started by: jedzio
10 Replies

10. UNIX for Beginners Questions & Answers

Syntax error in code snippet

Hello, I am attaching a code snippet. Some of the variables are set in earlier code like count, arrays harr1, harr2, barr1 and barr2. The code below gives syntax errors. I am very new to Bash. for (( i=0; i<=$(( $count -1 )); i++ )) do #Now read the element at barr2 location i. Also find... (2 Replies)
Discussion started by: ngabrani
2 Replies
source(n)						       Tcl Built-In Commands							 source(n)

__________________________________________________________________________________________________________________________________________________

NAME
source - Evaluate a file or resource as a Tcl script SYNOPSIS
source fileName source -encoding encodingName fileName | _________________________________________________________________ DESCRIPTION
This command takes the contents of the specified file or resource and passes it to the Tcl interpreter as a text script. The return value from source is the return value of the last command executed in the script. If an error occurs in evaluating the contents of the script then the source command will return that error. If a return command is invoked from within the script then the remainder of the file will be skipped and the source command will return normally with the result from the return command. The end-of-file character for files is "32" (^Z) for all platforms. The source command will read files up to this character. This restriction does not exist for the read or gets commands, allowing for files containing code and data segments (scripted documents). If you require a "^Z" in code for string comparison, you can use "32" or "u001a", which will be safely substituted by the Tcl interpreter into "^Z". The -encoding option is used to specify the encoding of the data stored in fileName. When the -encoding option is omitted, the system | encoding is assumed. EXAMPLE
Run the script in the file foo.tcl and then the script in the file bar.tcl: source foo.tcl source bar.tcl Alternatively: foreach scriptFile {foo.tcl bar.tcl} { source $scriptFile } SEE ALSO
file(n), cd(n), encoding(n), info(n) KEYWORDS
file, script Tcl source(n)
All times are GMT -4. The time now is 03:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy