diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index 9243539b872d..e075701d4457 100644
--- a/generic/tclBasic.c
+++ b/generic/tclBasic.c
@@ -3525,7 +3525,7 @@ TclCleanupCommand(
  *	the builtin functions. Redefining a builtin function forces all
  *	existing code to be invalidated since that code may be compiled using
  *	an instruction specific to the replaced function. In addition,
- *	redefioning a non-builtin function will force existing code to be
+ *	redefining a non-builtin function will force existing code to be
  *	invalidated if the number of arguments has changed.
  *
  *----------------------------------------------------------------------
@@ -3536,7 +3536,7 @@ Tcl_CreateMathFunc(
     Tcl_Interp *interp,		/* Interpreter in which function is to be
 				 * available. */
     const char *name,		/* Name of function (e.g. "sin"). */
-    int numArgs,		/* Nnumber of arguments required by
+    int numArgs,		/* Number of arguments required by
 				 * function. */
     Tcl_ValueType *argTypes,	/* Array of types acceptable for each
 				 * argument. */
diff --git a/generic/tclCompCmds.c b/generic/tclCompCmds.c
index 0f523380e98e..5f689103089a 100644
--- a/generic/tclCompCmds.c
+++ b/generic/tclCompCmds.c
@@ -3334,7 +3334,7 @@ TclCompileFormatCmd(
  * 	then return -1.
  *
  * Side effects:
- *	May add an entery into the table of compiled locals.
+ *	May add an entry into the table of compiled locals.
  *
  *----------------------------------------------------------------------
  */
diff --git a/generic/tclCompCmdsSZ.c b/generic/tclCompCmdsSZ.c
index bfa19572b999..b83b090f32c0 100644
--- a/generic/tclCompCmdsSZ.c
+++ b/generic/tclCompCmdsSZ.c
@@ -4039,7 +4039,7 @@ CompileAssociativeBinaryOpCmd(
     if (words > 3) {
 	/*
 	 * Reverse order of arguments to get precise agreement with [expr] in
-	 * calcuations, including roundoff errors.
+	 * calculations, including roundoff errors.
 	 */
 
 	OP4(	REVERSE, words-1);
@@ -4472,7 +4472,7 @@ TclCompileMinusOpCmd(
 
     /*
      * Reverse order of arguments to get precise agreement with [expr] in
-     * calcuations, including roundoff errors.
+     * calculations, including roundoff errors.
      */
 
     TclEmitInstInt4(INST_REVERSE, words-1, envPtr);
@@ -4517,7 +4517,7 @@ TclCompileDivOpCmd(
 
     /*
      * Reverse order of arguments to get precise agreement with [expr] in
-     * calcuations, including roundoff errors.
+     * calculations, including roundoff errors.
      */
 
     TclEmitInstInt4(INST_REVERSE, words-1, envPtr);
diff --git a/generic/tclEvent.c b/generic/tclEvent.c
index 3c4ff7443298..8cbb55b89089 100644
--- a/generic/tclEvent.c
+++ b/generic/tclEvent.c
@@ -947,7 +947,7 @@ Tcl_Exit(
     /*
      * Warning: this function SHOULD NOT return, as there is code that depends
      * on Tcl_Exit never returning. In fact, we will Tcl_Panic if anyone
-     * returns, so critical is this dependcy.
+     * returns, so critical is this dependency.
      *
      * If subsystems are not (yet) initialized, proper Tcl-finalization is
      * impossible, so fallback to system exit, see bug-[f8a33ce3db5d8cc2].
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index a16334a88bfa..a9f4326282de 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -1859,7 +1859,7 @@ TclCompileObj(
  *	of course).
  *
  * Side effects:
- *	valuePtr gets the new incrmented value.
+ *	valuePtr gets the new incremented value.
  *
  *----------------------------------------------------------------------
  */
@@ -2800,7 +2800,7 @@ TEBCresume(
 	/*
 	 * If the first object is shared, we need a new obj for the result;
 	 * otherwise, we can reuse the first object. In any case, make sure it
-	 * has enough room to accomodate all the concatenated bytes. Note that
+	 * has enough room to accommodate all the concatenated bytes. Note that
 	 * if it is unshared its bytes are copied by ckrealloc, so that we set
 	 * the loop parameters to avoid copying them again: p points to the
 	 * end of the already copied bytes, currPtr to the second object.
diff --git a/generic/tclFCmd.c b/generic/tclFCmd.c
index d58d02dd4627..dbb89949660e 100644
--- a/generic/tclFCmd.c
+++ b/generic/tclFCmd.c
@@ -425,7 +425,7 @@ TclFileDeleteCmd(
     if (result != TCL_OK) {
 	if (errfile == NULL) {
 	    /*
-	     * We try to accomodate poor error results from our Tcl_FS calls.
+	     * We try to accommodate poor error results from our Tcl_FS calls.
 	     */
 
 	    Tcl_SetObjResult(interp, Tcl_ObjPrintf(
diff --git a/generic/tclInterp.c b/generic/tclInterp.c
index 11202ce57ac3..1d81a80b406c 100644
--- a/generic/tclInterp.c
+++ b/generic/tclInterp.c
@@ -60,7 +60,7 @@ typedef struct Alias {
     Tcl_Obj *objPtr;		/* The first actual prefix object - the target
 				 * command name; this has to be at the end of
 				 * the structure, which will be extended to
-				 * accomodate the remaining objects in the
+				 * accommodate the remaining objects in the
 				 * prefix. */
 } Alias;
 
diff --git a/generic/tclListObj.c b/generic/tclListObj.c
index 88a332fd3273..c2eac61ce387 100644
--- a/generic/tclListObj.c
+++ b/generic/tclListObj.c
@@ -93,7 +93,7 @@ NewListInternalRep(
     List *listRepPtr;
 
     if (objc <= 0) {
-	Tcl_Panic("NewListInternalRep: expects postive element count");
+	Tcl_Panic("NewListInternalRep: expects positive element count");
     }
 
     /*
diff --git a/generic/tclObj.c b/generic/tclObj.c
index 531a25645842..8522e0a6de58 100644
--- a/generic/tclObj.c
+++ b/generic/tclObj.c
@@ -1040,7 +1040,7 @@ TclDbDumpActiveObjects(
  *
  *	Called via the TclNewObj or TclDbNewObj macros when TCL_MEM_DEBUG is
  *	enabled. This function will initialize the members of a Tcl_Obj
- *	struct. Initilization would be done inline via the TclNewObj macro
+ *	struct. Initialization would be done inline via the TclNewObj macro
  *	when compiling without TCL_MEM_DEBUG.
  *
  * Results:
@@ -3210,7 +3210,7 @@ FreeBignum(
  *	None.
  *
  * Side effects:
- *	The destination object receies a copy of the source object
+ *	The destination object receives a copy of the source object
  *
  *----------------------------------------------------------------------
  */
@@ -3291,7 +3291,7 @@ UpdateStringOfBignum(
  *
  * Tcl_NewBignumObj --
  *
- *	Creates an initializes a bignum object.
+ *	Creates and initializes a bignum object.
  *
  * Results:
  *	Returns the newly created object.
@@ -4214,7 +4214,7 @@ Tcl_GetCommandFromObj(
  *	None.
  *
  * Side effects:
- *	The object's old internal rep is freed. It's string rep is not
+ *	The object's old internal rep is freed. Its string rep is not
  *	changed. The refcount in the Command structure is incremented to keep
  *	it from being freed if the command is later deleted until
  *	TclNRExecuteByteCode has a chance to recognize that it was deleted.
@@ -4511,7 +4511,7 @@ Tcl_RepresentationCmd(
     /*
      * This is a workaround to silence reports from `make valgrind`
      * on 64-bit systems.  The problem is that the test suite
-     * includes calling the [represenation] command on values of
+     * includes calling the [representation] command on values of
      * &tclDoubleType.  When these values are created, the "doubleValue"
      * is set, but when the "twoPtrValue" is examined, its "ptr2"
      * field has never been initialized.  Since [representation]
diff --git a/generic/tclStringObj.c b/generic/tclStringObj.c
index b1098082a43c..720ed44efb97 100644
--- a/generic/tclStringObj.c
+++ b/generic/tclStringObj.c
@@ -3046,7 +3046,7 @@ TclStringReverse(
  * FillUnicodeRep --
  *
  *	Populate the Unicode internal rep with the Unicode form of its string
- *	rep. The object must alread have a "String" internal rep.
+ *	rep. The object must already have a "String" internal rep.
  *
  * Results:
  *	None.
@@ -3228,7 +3228,7 @@ DupStringInternalRep(
  *	This operation always succeeds and returns TCL_OK.
  *
  * Side effects:
- *	Any old internal reputation for objPtr is freed and the internal
+ *	Any old internal representation for objPtr is freed and the internal
  *	representation is set to "String".
  *
  *----------------------------------------------------------------------
diff --git a/generic/tclUtil.c b/generic/tclUtil.c
index 8d2347b5c602..2517081f504a 100644
--- a/generic/tclUtil.c
+++ b/generic/tclUtil.c
@@ -2645,7 +2645,7 @@ Tcl_DStringInit(
  * Side effects:
  *	Length bytes from "bytes" (or all of "bytes" if length is less than
  *	zero) are added to the current value of the string. Memory gets
- *	reallocated if needed to accomodate the string's new size.
+ *	reallocated if needed to accommodate the string's new size.
  *
  *----------------------------------------------------------------------
  */
@@ -2749,7 +2749,7 @@ TclDStringAppendDString(
  *
  * Side effects:
  *	String is reformatted as a list element and added to the current value
- *	of the string. Memory gets reallocated if needed to accomodate the
+ *	of the string. Memory gets reallocated if needed to accommodate the
  *	string's new size.
  *
  *----------------------------------------------------------------------
@@ -3954,12 +3954,12 @@ TclIndexEncode(
          */
         if (idx > 0) {
             /*
-             * All end+postive or end-negative expressions
+             * All end+positive or end-negative expressions
              * always indicate "after the end".
              */
             idx = after;
         } else if (idx < INT_MIN - TCL_INDEX_END) {
-            /* These indices always indicate "before the beginning */
+            /* These indices always indicate "before the beginning" */
             idx = before;
         } else {
             /* Encoded end-positive (or end+negative) are offset */
diff --git a/library/clock.tcl b/library/clock.tcl
index aa5d228b6dbd..b51f86fe485c 100644
--- a/library/clock.tcl
+++ b/library/clock.tcl
@@ -223,7 +223,7 @@ proc ::tcl::clock::Initialize {} {
 
     ::msgcat::mcset ru GREGORIAN_CHANGE_DATE 2421639
 
-    # Romania (Transylvania changed earler - perhaps de_RO should show the
+    # Romania (Transylvania changed earlier - perhaps de_RO should show the
     # earlier date?)
 
     ::msgcat::mcset ro GREGORIAN_CHANGE_DATE 2422063
diff --git a/unix/configure b/unix/configure
index 5dee8737b9aa..73e32c9b29de 100755
--- a/unix/configure
+++ b/unix/configure
@@ -14914,7 +14914,7 @@ fi
 
 
 #--------------------------------------------------------------------
-#	On some systems strstr is broken: it returns a pointer even even if
+#	On some systems strstr is broken: it returns a pointer even if
 #	the original string is empty.
 #--------------------------------------------------------------------
 
diff --git a/unix/configure.in b/unix/configure.in
index c73f368641c2..f355e03073ee 100644
--- a/unix/configure.in
+++ b/unix/configure.in
@@ -338,7 +338,7 @@ AC_CHECK_FUNC(memmove, , [
     AC_DEFINE(NO_STRING_H, 1, [Do we have <string.h>?]) ])
 
 #--------------------------------------------------------------------
-#	On some systems strstr is broken: it returns a pointer even even if
+#	On some systems strstr is broken: it returns a pointer even if
 #	the original string is empty.
 #--------------------------------------------------------------------
 
diff --git a/unix/tclUnixTime.c b/unix/tclUnixTime.c
index 3694ba2279b9..85a31e1afba2 100644
--- a/unix/tclUnixTime.c
+++ b/unix/tclUnixTime.c
@@ -113,7 +113,7 @@ TclpGetMicroseconds(void)
  * TclpGetClicks --
  *
  *	This procedure returns a value that represents the highest resolution
- *	clock available on the system. There are no garantees on what the
+ *	clock available on the system. There are no guarantees on what the
  *	resolution will be. In Tcl we will call this value a "click". The
  *	start time is also system dependent.
  *
@@ -162,7 +162,7 @@ TclpGetClicks(void)
  * TclpGetWideClicks --
  *
  *	This procedure returns a WideInt value that represents the highest
- *	resolution clock available on the system. There are no garantees on
+ *	resolution clock available on the system. There are no guarantees on
  *	what the resolution will be. In Tcl we will call this value a "click".
  *	The start time is also system dependent.
  *
