পৃষ্ঠাসমূহ

Search Your Article

CS

 

Welcome to GoogleDG – your one-stop destination for free learning resources, guides, and digital tools.

At GoogleDG, we believe that knowledge should be accessible to everyone. Our mission is to provide readers with valuable ebooks, tutorials, and tech-related content that makes learning easier, faster, and more enjoyable.

What We Offer:

  • 📘 Free & Helpful Ebooks – covering education, technology, self-development, and more.

  • 💻 Step-by-Step Tutorials – practical guides on digital tools, apps, and software.

  • 🌐 Tech Updates & Tips – simplified information to keep you informed in the fast-changing digital world.

  • 🎯 Learning Support – resources designed to support students, professionals, and lifelong learners.

    Latest world News 

     

Our Vision

To create a digital knowledge hub where anyone, from beginners to advanced learners, can find trustworthy resources and grow their skills.

Why Choose Us?

✔ Simple explanations of complex topics
✔ 100% free access to resources
✔ Regularly updated content
✔ A community that values knowledge sharing

We are continuously working to expand our content library and provide readers with the most useful and relevant digital learning materials.

📩 If you’d like to connect, share feedback, or suggest topics, feel free to reach us through the Contact page.

Pageviews

Tuesday, April 4, 2017

Tcl - Special Variables

In Tcl, we classify some of the variables as special variables and they have a predefined usage/functionality. The list of specials variables is listed below.
S.No. Special Variable & Description
1 argc
Refers to a number of command-line arguments.
2 argv
Refers to the list containing the command-line arguments.
3 argv0
Refers to the file name of the file being interpreted or the name by which we invoke the script.
4 env
Used for representing the array of elements that are environmental variables.
5 errorCode
Provides the error code for last Tcl error.
6 errorInfo
Provides the stack trace for last Tcl error.
7 tcl_interactive
Used to switch between interactive and non-interactive modes by setting this to 1 and 0 respectively.
8 tcl_library
Used for setting the location of standard Tcl libraries.
9 tcl_pkgPath
Provides the list of directories where packages are generally installed.
10 tcl_patchLevel
Refers to the current patch level of the Tcl interpreter.
11 tcl_platform
Used for representing the array of elements with objects including byteOrder, machine, osVersion, platform, and os.
12 tcl_precision
Refers to the precision i.e. number of digits to retain when converting to floating-point numbers to strings. The default value is 12.
13 tcl_prompt1
Refers to the primary prompt.
14 tcl_prompt2
Refers to the secondary prompt with invalid commands.
15 tcl_rcFileName
Provides the user specific startup file.
16 tcl_traceCompile
Used for controlling the tracing of bytecode compilation. Use 0 for no output, 1 for summary, and 2 for detailed.
17 tcl_traceExec
Used for controlling the tracing of bytecode execution. Use 0 for no output, 1 for summary, and 2 for detailed.
18 tcl_version
Returns the current version of the Tcl interpreter.
The above special variables have their special meanings for the Tcl interpreter.

Examples for using Tcl special variables

Let's see some examples for special variables.

Tcl version

#!/usr/bin/tclsh

puts $tcl_version
When you run the program, you will get a similar output as shown below −
8.6

Tcl Environment Path

#!/usr/bin/tclsh

puts $env(PATH)
When you run the program, you will get a similar output as shown below −
/home/cg/root/GNUstep/Tools:/usr/GNUstep/Local/Tools:/usr/GNUstep/System/Tools:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/webmaster/.local/bin:/home/webmaster/bin:/usr/local/scriba/bin:/usr/local/smlnj/bin:/usr/local/bin/std:/usr/local/bin/extra:/usr/local/fantom/bin:/usr/local/dart/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin:/opt/mono/bin:/opt/mono/lib/mono/4.5:/usr/local/bin:.:/usr/libexec/sdcc:/usr/local/icon-v950/bin:/usr/local/mozart/bin:/opt/Pawn/bin:/opt/jdk1.7.0_75/bin:/opt/jdk1.7.0_75/jre/bin:/opt/pash/Source/PashConsole/bin/Debug/

Tcl Package Path

#!/usr/bin/tclsh

puts $tcl_pkgPath
When you run the program, you will get a similar output as shown below −
/usr/lib64/tcl8.6 /usr/share/tcl8.6 /usr/lib64/tk8.6 /usr/share/tk8.6

Tcl Library

#!/usr/bin/tclsh

puts $tcl_library
When you run the program, you will get a similar output as shown below −
/usr/share/tcl8.6

Tcl Patch Level

#!/usr/bin/tclsh

puts $tcl_patchLevel
When you run the program, you will get a similar output as shown below −
8.6.3

Tcl Precision

#!/usr/bin/tclsh

puts $tcl_precision
When you run the program, you will get a similar output as shown below −
0

Tcl Startup File

#!/usr/bin/tclsh

puts $tcl_rcFileName
When you run the program, you will get a similar output as shown below −
~/.tclshrc

No comments:

Post a Comment