This is a Tool Command Language (Tcl) implementation of SEGUID v2 together with the original SEGUID algorithm.
$ tclsh
% source src/seguid.tcl
## Linear double-stranded DNA
% puts [seguid::ldseguid "AATATGCC" "GGCATATT"]
cdseguid=dUxN7YQyVInv3oDcvz8ByupL44A
## Same swapping Watson and Crick
% puts [seguid::ldseguid "GGCATATT" "AATATGCC"]
cdseguid=dUxN7YQyVInv3oDcvz8ByupL44A
## Circular double-stranded DNA
% puts [seguid::cdseguid "TATGCCAA" "TTGGCATA"]
cdseguid=dUxN7YQyVInv3oDcvz8ByupL44A
## Same swapping Watson and Crick
% puts [seguid::cdseguid "TTGGCATA" "TATGCCAA"]
cdseguid=dUxN7YQyVInv3oDcvz8ByupL44A
## Same rotating two basepairs = minimal rotation by Watson)
% puts [seguid::cdseguid "AATATGCC" "GGCATATT"]
cdseguid=dUxN7YQyVInv3oDcvz8ByupL44A
% puts [seguid::lsseguid "TATGCCAA"]
lsseguid=EevrucUNYjqlsxrTEK8JJxPYllk
% puts [seguid::csseguid "TATGCCAA"]
csseguid=XsJzXMxgv7sbpqIzFH9dgrHUpWw
% puts [seguid::csseguid "GCCAATAT"]
csseguid=XsJzXMxgv7sbpqIzFH9dgrHUpWw
## Linear single-stranded DNA
$ tclsh seguid --type=lsseguid <<< "TATGCCAA"
lsseguid=EevrucUNYjqlsxrTEK8JJxPYllk
## Circular single-stranded DNA
$ tclsh seguid --type=csseguid <<< "TATGCCAA"
csseguid=XsJzXMxgv7sbpqIzFH9dgrHUpWw
## Same rotating two basepairs
$ tclsh seguid --type=csseguid <<< "GCCAATAT"
csseguid=XsJzXMxgv7sbpqIzFH9dgrHUpWw
## Linear double-stranded DNA
$ tclsh seguid --type=ldseguid <<< "AATATGCC;GGCATATT"
ldseguid=dUxN7YQyVInv3oDcvz8ByupL44A
## Same swapping Watson and Crick
$ tclsh seguid --type=ldseguid <<< "GGCATATT;AATATGCC"
ldseguid=dUxN7YQyVInv3oDcvz8ByupL44A
## Same but rotated
$ tclsh seguid --type=ldseguid <<< "AATATGCC;GGCATATT"
cdseguid=dUxN7YQyVInv3oDcvz8ByupL44A
This Tcl implementation of SEGUID requires:
The standalone seguid
Tcl script is built from the Tcl scripts in
the src/
folder. To build it from source, do:
$ make seguid
Building seguid from src/seguid.tcl src/tcllib/base64.tcl src/tcllib/sha1.tcl ...
-rwxrwxr-x 1 henrik henrik 21288 Dec 21 18:10 seguid
Version built: 0.0.3
Building seguid from src/seguid.tcl src/tcllib/base64.tcl src/tcllib/sha1.tcl ... done
To verify it was built correctly, call:
$ tclsh seguid --version
0.0.3