cobot 0.1.1.7 → 0.1.1.8
raw patch · 4 files changed
+25/−9 lines, 4 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Bio.Protein.AminoAcid.Instances: type family RadicalType r a :: Type;
- Bio.Protein.Chain.Builder: type family Monomer a :: Type;
- Bio.Protein.Metric: type family ReturnMetric m :: Type;
+ Bio.Protein.AminoAcid.Instances: type Create a :: Type;
+ Bio.Protein.AminoAcid.Instances: type RadicalType r a :: Type;
+ Bio.Protein.Chain.Builder: type Monomer a :: Type;
+ Bio.Protein.Metric: type ReturnMetric m :: Type;
- Bio.Protein.AminoAcid.Type: atom' :: forall r_ao2x a_ao2y. Lens' (Env r_ao2x a_ao2y) a_ao2y
+ Bio.Protein.AminoAcid.Type: atom' :: forall r_aojt a_aoju. Lens' (Env r_aojt a_aoju) a_aoju
- Bio.Protein.AminoAcid.Type: c' :: forall nr_ao2A car_ao2B cr_ao2C a_ao2D cr_aqKI. Lens (AminoAcid nr_ao2A car_ao2B cr_ao2C a_ao2D) (AminoAcid nr_ao2A car_ao2B cr_aqKI a_ao2D) (cr_ao2C a_ao2D) (cr_aqKI a_ao2D)
+ Bio.Protein.AminoAcid.Type: c' :: forall nr_aojw car_aojx cr_aojy a_aojz cr_arwm. Lens (AminoAcid nr_aojw car_aojx cr_aojy a_aojz) (AminoAcid nr_aojw car_aojx cr_arwm a_aojz) (cr_aojy a_aojz) (cr_arwm a_aojz)
- Bio.Protein.AminoAcid.Type: ca' :: forall nr_ao2A car_ao2B cr_ao2C a_ao2D car_aqKJ. Lens (AminoAcid nr_ao2A car_ao2B cr_ao2C a_ao2D) (AminoAcid nr_ao2A car_aqKJ cr_ao2C a_ao2D) (car_ao2B a_ao2D) (car_aqKJ a_ao2D)
+ Bio.Protein.AminoAcid.Type: ca' :: forall nr_aojw car_aojx cr_aojy a_aojz car_arwn. Lens (AminoAcid nr_aojw car_aojx cr_aojy a_aojz) (AminoAcid nr_aojw car_arwn cr_aojy a_aojz) (car_aojx a_aojz) (car_arwn a_aojz)
- Bio.Protein.AminoAcid.Type: cb :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cb :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cd :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cd :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cd1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cd1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cd2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cd2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ce :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ce :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ce1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ce1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ce2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ce2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ce3 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ce3 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cg :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cg :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cg' :: forall a_ao2u a_astZ. Lens (CG a_ao2u) (CG a_astZ) a_ao2u a_astZ
+ Bio.Protein.AminoAcid.Type: cg' :: forall a_aojq a_atYP. Lens (CG a_aojq) (CG a_atYP) a_aojq a_atYP
- Bio.Protein.AminoAcid.Type: cg1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cg1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cg2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cg2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ch2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ch2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cz :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cz :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cz2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cz2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: cz3 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: cz3 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: environment :: forall r_ao2x a_ao2y r_asrw. Lens (Env r_ao2x a_ao2y) (Env r_asrw a_ao2y) (r_ao2x a_ao2y) (r_asrw a_ao2y)
+ Bio.Protein.AminoAcid.Type: environment :: forall r_aojt a_aoju r_atWe. Lens (Env r_aojt a_aoju) (Env r_atWe a_aoju) (r_aojt a_aoju) (r_atWe a_aoju)
- Bio.Protein.AminoAcid.Type: n' :: forall nr_ao2A car_ao2B cr_ao2C a_ao2D nr_aqKK. Lens (AminoAcid nr_ao2A car_ao2B cr_ao2C a_ao2D) (AminoAcid nr_aqKK car_ao2B cr_ao2C a_ao2D) (nr_ao2A a_ao2D) (nr_aqKK a_ao2D)
+ Bio.Protein.AminoAcid.Type: n' :: forall nr_aojw car_aojx cr_aojy a_aojz nr_arwo. Lens (AminoAcid nr_aojw car_aojx cr_aojy a_aojz) (AminoAcid nr_arwo car_aojx cr_aojy a_aojz) (nr_aojw a_aojz) (nr_arwo a_aojz)
- Bio.Protein.AminoAcid.Type: nd1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: nd1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: nd2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: nd2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ne :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ne :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ne1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ne1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: ne2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: ne2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: nh1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: nh1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: nh2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: nh2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: nz :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: nz :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: o' :: forall a_ao2v. Lens' (OXT a_ao2v) a_ao2v
+ Bio.Protein.AminoAcid.Type: o' :: forall a_aojr. Lens' (OXT a_aojr) a_aojr
- Bio.Protein.AminoAcid.Type: od1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: od1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: od2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: od2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: oe1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: oe1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: oe2 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: oe2 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: og :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: og :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: og1 :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: og1 :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: oh :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: oh :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: oxt' :: forall a_ao2v. Lens' (OXT a_ao2v) a_ao2v
+ Bio.Protein.AminoAcid.Type: oxt' :: forall a_aojr. Lens' (OXT a_aojr) a_aojr
- Bio.Protein.AminoAcid.Type: radical' :: forall a_ao2u. Lens' (CG a_ao2u) AA
+ Bio.Protein.AminoAcid.Type: radical' :: forall a_aojq. Lens' (CG a_aojq) AA
- Bio.Protein.AminoAcid.Type: sd :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: sd :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
- Bio.Protein.AminoAcid.Type: sg :: forall a_ao2z. Traversal' (Radical a_ao2z) a_ao2z
+ Bio.Protein.AminoAcid.Type: sg :: forall a_aojv. Traversal' (Radical a_aojv) a_aojv
Files
- ChangeLog.md +4/−0
- cobot.cabal +9/−3
- src/Bio/Chain/Alignment/Algorithms.hs +6/−0
- test/JuliaSpec.hs +6/−6
ChangeLog.md view
@@ -2,6 +2,10 @@ ## Unreleased changes +## [0.1.1.8] - 2023-03-23+### Changed+- Speedup alignment of `Chain Int Char`.+ ## [0.1.1.7] - 2021-10-06 ### Added - `Complementary` instance for `Char`.
cobot.cabal view
@@ -1,13 +1,13 @@ cabal-version: 2.2 --- This file has been generated from package.yaml by hpack version 0.34.4.+-- This file has been generated from package.yaml by hpack version 0.35.0. -- -- see: https://github.com/sol/hpack ----- hash: 09eef6fbd0d4093057c44a56242d5c569842b42a1e49c3625efc6d01f1471d9f+-- hash: 8dc601d166ae8a9d13853f48df9e28fb2c547e46d0d582a6eb091deab3d7a7ba name: cobot-version: 0.1.1.7+version: 0.1.1.8 synopsis: Computational biology toolkit to collaborate with researchers in constructive protein engineering description: Please see the README on GitHub at <https://github.com/biocad/cobot#readme> category: Bio@@ -19,6 +19,8 @@ license: BSD-3-Clause license-file: LICENSE build-type: Simple+tested-with:+ GHC ==8.10.7 || ==9.2.5 || ==9.4.4 extra-source-files: README.md ChangeLog.md@@ -98,6 +100,8 @@ HandcraftedSpec JuliaSpec Paths_cobot+ autogen-modules:+ Paths_cobot hs-source-dirs: test default-extensions:@@ -141,6 +145,8 @@ type: exitcode-stdio-1.0 main-is: Main.hs other-modules:+ Paths_cobot+ autogen-modules: Paths_cobot hs-source-dirs: bench
src/Bio/Chain/Alignment/Algorithms.hs view
@@ -182,6 +182,8 @@ {-# INLINE traceStart #-} traceStart = const defStart + {-# SPECIALISE scoreMatrix :: IsGap g => GlobalAlignment g Char Char -> Chain Int Char -> Chain Int Char -> Matrix (Chain Int Char) (Chain Int Char) #-}+ {-# INLINEABLE scoreMatrix #-} scoreMatrix :: forall m m' . (Alignable m, Alignable m') => GlobalAlignment g (IxValue m) (IxValue m') -> m@@ -256,6 +258,8 @@ {-# INLINE traceStart #-} traceStart = const localStart + {-# SPECIALISE scoreMatrix :: IsGap g => LocalAlignment g Char Char -> Chain Int Char -> Chain Int Char -> Matrix (Chain Int Char) (Chain Int Char) #-}+ {-# INLINEABLE scoreMatrix #-} scoreMatrix :: forall m m' . (Alignable m, Alignable m') => LocalAlignment g (IxValue m) (IxValue m') -> m@@ -327,6 +331,8 @@ {-# INLINE traceStart #-} traceStart = const semiStart + {-# SPECIALISE scoreMatrix :: IsGap g => SemiglobalAlignment g Char Char -> Chain Int Char -> Chain Int Char -> Matrix (Chain Int Char) (Chain Int Char) #-}+ {-# INLINEABLE scoreMatrix #-} scoreMatrix :: forall m m' . (Alignable m, Alignable m') => SemiglobalAlignment g (IxValue m) (IxValue m') -> m
test/JuliaSpec.hs view
@@ -25,8 +25,8 @@ it "Is symmetric (big): " $ score resBig1 `shouldBe` score resBig2 it "Is symmetric (med): " $ score resMed1 `shouldBe` score resMed2 it "Is symmetric (small): " $ score resSmall1 `shouldBe` score resSmall2- -- | scoremodel = AffineGapScoreModel(EDNAFULL, gap_open=0, gap_extend=-9);- -- | pairalign(GlobalAlignment(), a, b, scoremodel)+ -- scoremodel = AffineGapScoreModel(EDNAFULL, gap_open=0, gap_extend=-9);+ -- pairalign(GlobalAlignment(), a, b, scoremodel) let aAns = "CTCTGCAAGCATAGAGATATTTCACCGGCAATATTTTTCGTTGAAGTGTATTTGTCCCTATTATCACACC\ \AGTCATTCCGATGTCGTTAGGGCCGCCTGTTTTACTGGAGTTCCCGTTCGATGTACCCTCCTCCATAGA\ \GATTTAGGGGTATAGACCGCGACGGACGGGGCTTGCGAAAGCTGCCCGATAATGGACTTTGACAATAGA\@@ -111,8 +111,8 @@ it "Is symmetric (big): " $ score resBig1 `shouldBe` score resBig2 it "Is symmetric (med): " $ score resMed1 `shouldBe` score resMed2 it "Is symmetric (small): " $ score resSmall1 `shouldBe` score resSmall2- -- | scoremodel = AffineGapScoreModel(EDNAFULL, gap_open=0, gap_extend=-3);- -- | pairalign(OverlapAlignment(), a, b, scoremodel)+ -- scoremodel = AffineGapScoreModel(EDNAFULL, gap_open=0, gap_extend=-3);+ -- pairalign(OverlapAlignment(), a, b, scoremodel) let aAns = "CTCTGCAAGCATAGAGATATTTCACCGGCAATATTTTTCGTTGAAGTGTATTTGTCCCTATTATCACACC\ \AGTCATTCCGATGTCGTTAGGGCCGCCTGTTTTACTG--G-AG--TTC--C-CGTTCGATGTACCCTCC\ \TCCATAGAGA-TTTAGGGGTA-T-AGACCGCGACGGACGGGGCTTGCGAAAGCTGCCCGATAATGGACT\@@ -188,8 +188,8 @@ it "Is symmetric (big): " $ score resBig1 `shouldBe` score resBig2 it "Is symmetric (med): " $ score resMed1 `shouldBe` score resMed2 it "Is symmetric (small): " $ score resSmall1 `shouldBe` score resSmall2- -- | scoremodel = AffineGapScoreModel(EDNAFULL, gap_open=0, gap_extend=-7);- -- | pairalign(LocalAlignment(), a, b, scoremodel)+ -- scoremodel = AffineGapScoreModel(EDNAFULL, gap_open=0, gap_extend=-7);+ -- pairalign(LocalAlignment(), a, b, scoremodel) let aAns = "TGAA-CAGCCATGCCA-TC-CGCAGGATGCGCC-AGGGAAAAGCCACCCCCAAGAACGACTCCA\ \GGGGCCCAAGTATGATGATAGC-GTTAGGCTTGCTCGAAGGCAAACAACTCCGAGG-ATGC-T\ \TAGCAGGCCACAACGTGCTCGATAGCACGAGCGTAAGATGCGAACGCAGTAGTACCTAATGCGGGCGAGACATT"