#!/usr/bin/perl

# Idiom #277 Remove an element from a set
 
print "Implementation using native perl hash as a set\n\n";

use strict;

# use a hash to mimic a set
my %set;

my @list = ( 'a' .. 'f' );
$set{$_} = 1 for @list;

print "Contents of set:\n";
print join ' ', sort keys %set;

delete $set{'c'};	    # delete specific key

print "\nAfter removing elements c:\n";
print join ' ', sort keys %set;

use v5.20;
delete %set{'b','e'};	# delete hash slice

print "\nAfter removing elements b and e:\n";
print join ' ', sort keys %set;
