Memory layout of a data structure: Difference between revisions

Content added Content deleted
m (Omit from Logtalk)
Line 552: Line 552:
$vec->set($rs232{'RD Received data'}, 1);
$vec->set($rs232{'RD Received data'}, 1);
$vec->get($rs232{'TC Transmit clock'});</lang>
$vec->get($rs232{'TC Transmit clock'});</lang>
=={{header|Perl 6}}==
The following is specced to work, but implementation of shaped arrays is not quite complete.
<lang perl6>enum T_RS232 <
carrier_detect
received_data
transmitted_data
data_terminal_ready
signal_ground
data_set_ready
request_to_send
clear_to_send
ring_indicator
>;

my bit @signal[T_RS232];

@signal[signal_ground] = 1;</lang>
In the absence of shaped arrays, you can do the usual bit-twiddling tricks on a native integer of sufficient size. (Such an integer could presumably be mapped directly to a device register.)
<lang perl6>$signal +|= 1 +< signal_ground;</lang>


=={{header|PicoLisp}}==
=={{header|PicoLisp}}==