Live data from Hacker News

Perl 6 Optimism

p6weekly.wordpress.com

241–243 of 243 posts

Re: Perl 6 Optimism

#241

Earlier quoted context omitted.

> There is no technical advantage left to ASCII-only syntax for APL-derived languages. Except for that minor technical advantage of actually being on a standard keyboard. That said, I would love standard keyboards to get more symbols. I actally like using symbols instead of words for operators, when done in a consistent and logical fashion as J and K do and unlike Perl's disaster of a syntax. Map and reduce (each and…

Agreed on the keyboard thing. Dyalog sells an APL keyboard, but it isn't ergonomic, which I need. I think "/" is a good symbol for map as it is easy access.

I really want to do a stream based language that is like APL for streams. With the current event sourcing craze right now, I definitely see modern use cases.

Re: Perl 6 Optimism

#242

Earlier quoted context omitted.

People realize that of course, but I don't think simply buying keycaps is an option for everyone. Will they work with my slightly non standard ergonomic keyboard?

None of my keyboards have Russian keycaps on them. I still somehow manage to type in Russian. Do you look at your keycaps when typing? If you want to, you can put stickers on your keycaps (you can purchase sets for foreign languages, and for APL), or use a quality permanent marker. A reference chart is also an option.

I don't look know that I know where everything is, but I'm guessing it takes awhile to learn where 72 weird APL symbols go when you're first learning you know?

Re: Perl 6 Optimism

#243
post #233

Earlier quoted context omitted.

Only if you're using a list, not a dict. I just tried it in the REPL: >>> foo = {} >>> foo[3] = 72 >>> foo[64] = 80 >>> foo {3: 72, 64: 80}

The difference is more dramatic once you have two or more dimensions: >>> foo = {} >>> foo[3][4] = 42 Traceback (most recent call last): File " ", line 1, in KeyError: 3 Compared to: DB $foo{3}{4} = 42 DB x \%foo 0 HASH(0x7f9f4315c940) 3 => HASH(0x7f9f432bb148) 4 => 42

    tree = lambda: collections.defaultdict(tree)
    foo = tree()
    foo[3][4] = 42
Post reply on HN