| |
alt.lang.intercal |
>But, I like the "whirlpool" 8-) I'll bet there's something we could use it The biggest ommission from the Intercal standard is obviously the Note that Intercal pointers should operate on 7-bit word I'd also like to propose the addition of an augmented operator [;:@<>?#$%&(]-[][(){}<>] Example operators include: :-) -- happy -- always returns TRUE This augmented address space will give us lots of room to -- Charlie --
>for!
own until you can write an Intercal compiler in Intercal, and it
will never supplant C until you can write UNIX in it.
ability to handle indirect addressing. I'd propose that the
whirlpool (@) symbol be used for address dereferencing and
pointer operations. Unlike C, which uses *p to indicate the
address pointed to by p, and &p to indicate the address of p, we
can economize by using only the one symbol. Position sensitivity
is the name of the game. For example, @.1 should mean the address
pointed to by .1 and .1@ should mean the address of .1 .
boundaries, so a complicated mingle-and-twiddle operation is
required to convert from 16 or 32 bit addresses to 7-bit Intercal
addresses. Oh, and of course Intercal assumes a segmented address
space, so all the 8086 assembly hackers should be happy.
namespace for Intercal. It's obvious that we're using up the
single character operators pretty fast. I'd like to propose a new
class of three-character operators. Lexical analysis relies on
the fact that the middle character is a "-", so the regular
expression defining the pattern space is:
:-( -- sad -- always returns FALSE
;-) -- sly -- always returns TRUE or FALSE, depending
on how polite the program is
:-] -- hcf -- if TRUE, halt and catch fire
:-[ -- dracula -- deallocates a byte of memory from the
specified address (leaving a leak --
so bite me)
;-} -- loopy -- allocates two 7-bit words and returns
a pointer to the first nonzero bit in
the first word (no zero-on-demand clearing
necessary for Intercal gurus!)
to that line (plus specified increment)
implement all those wonderful advanced features we envy in
languages such as C++, Ada, Snobol-4, and Perl. It should
keep us all happy with new features while we await with
bated breath the draft ANSI standard for Objective-Intercal.
Charlie Stross ... charl...@scol.sco.com ... char...@antipope.demon.co.uk
UNIX oriented text mangler | This is a
"As soon as you pull out the pin, Mister | Kibo
Hand Grenade stops being your friend." | attractor: help stop newsgrepping!