in reply to Re: Identifying bigrams and making a note of which ones exist
in thread Identifying bigrams and making a note of which ones exist

Fleshing your code out a little into a full example gives:

use strict; use warnings; use Data::Dump::Streamer; my @bigram = ( 'aa' .. 'zz' ); # magic! my @testBigrams = split ' ', do {local $/; <DATA>;}; # make a "set" of the ones in the list: my %bigram_list; @bigram_list{@testBigrams} = (0) x @testBigrams; # corresponds to (and same size as) @bigram. my @bigrams_existing = map { exists $bigram_list{$_} ? 1 : 0 } @bigram; Dump (\@bigrams_existing); __DATA__ gr an df at he rj dp or te rj kv ap la ne ts ca pe ww
$ARRAY1 = [ ( 0 ) x 13, 1, 0, 1, ( 0 ) x 3, 1, ( 0 ) x 32, 1, ( 0 ) x 30, 1, ( 0 ) x 9, 1, ( 0 ) x 79, 1, ( 0 ) x 12, 1, ( 0 ) x 94, 1, ( 0 ) x 4, 1, ( 0 ) x 55, 1, ( 0 ) x 38, 1, ( 0 ) x 12, 1, ( 0 ) x 56, 1, ( 0 ) x 46, 1, ( 0 ) x 13, 1, ( 0 ) x 81, 1, ( 0 ) x 81 ];

Note in particular that the line @bigram_list{@bigram_list} = (); becomes @bigram_list{@testBigrams} = (0) x @testBigrams; and starts to make some sense.


DWIM is Perl's answer to Gödel