http://qs321.pair.com?node_id=820181


in reply to Re^2: Does String::LCSS work?
in thread Does String::LCSS work?

Thanks. I'll try to find some time to fix this next week. I'll just have to change the XS code which iterates over the strings, right?

Update: 1.1 supports now UTF8.

Replies are listed 'Best First'.
Re^4: Does String::LCSS work?
by ikegami (Patriarch) on Jan 28, 2010 at 19:06 UTC

    Fixing the bug or the limitation? Fixing the bug is simple:

    --- LCSS_XS.xs.orig 2010-01-28 14:00:25.000000000 -0500 +++ LCSS_XS.xs.new 2010-01-28 14:03:45.000000000 -0500 @@ -10,8 +10,8 @@ void _compute_all_lcss(s, t) - char * s - char * t + SV * s + SV * t PROTOTYPE: $$ ALIAS: lcss = 1 @@ -21,7 +21,7 @@ int i; AV * ra; PPCODE: - res = _lcss(s,t); + res = _lcss( SvPVbyte_nolen(s), SvPVbyte_nolen(t) ); if (res.n <= 0) { _free_res(res); XSRETURN_UNDEF;

    It turns out there are two limitations:

    • It can only compare strings of bytes
    • It can only compare strings that don't contain byte 00. (It and anything after it is ignored.)