diff --git a/CHANGELOG.md b/CHANGELOG.md
index 09dffaf7..20569057 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,13 +4,14 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
-## [Unreleased] - 2023-05-15
+## [Unreleased] - 2023-05-30
### Added
### Changed
### Deprecated
+* Deprecated double-valued costs constructor of EditDistance for arrays and other sequences, with the existing EditDistanceDouble class as its replacement. This constructor will be removed in the next major release, most likely sometime in the Fall of 2023.
### Removed
diff --git a/src/main/java/org/cicirello/sequences/distance/EditDistance.java b/src/main/java/org/cicirello/sequences/distance/EditDistance.java
index c60700d2..c5e6271b 100644
--- a/src/main/java/org/cicirello/sequences/distance/EditDistance.java
+++ b/src/main/java/org/cicirello/sequences/distance/EditDistance.java
@@ -1,6 +1,6 @@
/*
* JavaPermutationTools: A Java library for computation on permutations and sequences
- * Copyright 2005-2022 Vincent A. Cicirello,
Edit distance is the minimum cost to transform one string (or sequence) into the other, which * is the sum of the costs of the edit operations necessary to do so. This edit distance considers 3 - * edit operations: Inserts which insert a new element into the sequence, Deletes which remove an + * edit operations: Inserts which inserts a new element into the sequence, Deletes which removes an * element from the sequence, and Changes which replace an element with a different element. * - *
The edit distance is parameterized by costs for the edit operations. We provide two - * constructors which enable you to specify 3 costs, 1 for each type of edit operation. One of the - * constructors expects integer costs, and the other double valued costs. If you specify costs as - * integers, then all of the distance and distancef methods from the {@link - * org.cicirello.sequences.distance.SequenceDistanceMeasurer SequenceDistanceMeasurer} and {@link - * org.cicirello.sequences.distance.SequenceDistanceMeasurerDouble SequenceDistanceMeasurerDouble} - * interfaces are available. If costs are specified as doubles, then only the distancef methods will - * function, while the distance methods will throw exceptions. + *
The edit distance is parameterized by costs for the edit operations. The class provides a + * constructor which enables you to specify 3 costs as ints, 1 for each type of edit operation. If + * your application requires non-integer costs, then use the {@link EditDistanceDouble} class which + * defines the costs as doubles, but is otherwise an implementation of the same algorithm. * *
This class supports computing EditDistance for Java String objects or arrays of any of the
* primitive types, or arrays of objects. It makes no assumptions about the contents of the Strings
@@ -80,7 +76,9 @@ public class EditDistance extends EditDistanceDouble implements SequenceDistance
* @param deleteCost Cost of an deletion operation. Must be non-negative.
* @param changeCost Cost of an change operation. Must be non-negative.
* @throws IllegalArgumentException if any of the costs are negative.
+ * @deprecated For double-valued costs, use the {@link EditDistanceDouble} class instead.
*/
+ @Deprecated
public EditDistance(double insertCost, double deleteCost, double changeCost) {
super(insertCost, deleteCost, changeCost);
if (isIntAsDouble(insertCost) && isIntAsDouble(deleteCost) && isIntAsDouble(changeCost)) {
@@ -95,8 +93,7 @@ public EditDistance(double insertCost, double deleteCost, double changeCost) {
}
/**
- * Constructs an edit distance measure with the specified edit operation costs. With integer
- * costs, all of the distance and distancef methods are available.
+ * Constructs an edit distance measure with the specified edit operation costs.
*
* @param insertCost Cost of an insertion operation. Must be non-negative.
* @param deleteCost Cost of an deletion operation. Must be non-negative.
diff --git a/src/main/java/org/cicirello/sequences/distance/EditDistanceDouble.java b/src/main/java/org/cicirello/sequences/distance/EditDistanceDouble.java
index c98f1248..2d3012bf 100644
--- a/src/main/java/org/cicirello/sequences/distance/EditDistanceDouble.java
+++ b/src/main/java/org/cicirello/sequences/distance/EditDistanceDouble.java
@@ -1,6 +1,6 @@
/*
* JavaPermutationTools: A Java library for computation on permutations and sequences
- * Copyright 2005-2022 Vincent A. Cicirello,
Edit distance is the minimum cost to transform one string (or sequence) into the other, which
* is the sum of the costs of the edit operations necessary to do so. This edit distance considers 3
diff --git a/src/main/java/org/cicirello/sequences/distance/LongestCommonSubsequenceDistance.java b/src/main/java/org/cicirello/sequences/distance/LongestCommonSubsequenceDistance.java
index 2f4439ae..b378c57c 100644
--- a/src/main/java/org/cicirello/sequences/distance/LongestCommonSubsequenceDistance.java
+++ b/src/main/java/org/cicirello/sequences/distance/LongestCommonSubsequenceDistance.java
@@ -1,6 +1,6 @@
/*
* JavaPermutationTools: A Java library for computation on permutations and sequences
- * Copyright 2005-2022 Vincent A. Cicirello,