Memory layout of a data structure: Difference between revisions
Content added Content deleted
m (Omit from Logtalk) |
(→{{header|Perl 6}}: add entry) |
||
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}}== |