Perl 6 - the future is here, just unevenly distributed

IRC log for #6macros, 2016-06-13

| Channels | #6macros index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
07:38 pdcawley joined #6macros
13:13 Ven_ joined #6macros
13:13 Ven_ o/
15:27 masak I love to be able to answer questions about 007 using 007 itself :) https://github.com/masak/007/issues/147#issuecomment-225615657
15:27 masak that's a healthy form of dogfooding, IMO
15:27 masak ven: thanks for all the feedback in the issues today
18:23 FROGGS joined #6macros
18:23 vendethiel joined #6macros
19:13 cognominal joined #6macros
19:37 cognominal A proposal about slangs. This is not macros. But I want feedback before submitting to a wider audience. https://gist.github.com/cognominal/d181082b41595d6f41588faf6d51a42d  vendethiel masak ?
19:37 vendethiel i'll read that :)
19:39 FROGGS one problem: <~my-slang.a-rule> would not capture
19:39 FROGGS the rule is: if there is a non-alpha char at the beginning, dont capture
19:41 cognominal So that would be an exception
19:41 FROGGS and $~MAIN = (Perl6::Grammar, Perl6::Actions) is just too much magic for me I think
19:43 cognominal yea, I don't mind dropping that one :)
19:43 cognominal just a convenience
19:44 cognominal Also I forgot the dollar in many place
19:44 cognominal <$~slang.rule>
19:50 cognominal or to avoid the exception about capture, that should be <slang.capture>
19:50 cognominal I don't think this conflict with existing syntax
19:51 cognominal oops, I meant <slang.rule>
19:56 * masak reads
19:57 cognominal I am updating within 1 minute
19:58 cognominal updated
19:58 masak cognominal: s/utili<e/utilize/
19:59 masak or even something avoiding the word "utilize", like "make use of", or "use" :P
19:59 masak oh, you found that typo already
19:59 masak cognominal: looks good.
20:00 masak interestingly, I keep thinking of slangs, but I feel my thoughts wander largely orthogonally to yours
20:00 masak (which is good, I think)
20:00 cognominal nice
20:00 masak cognominal: by the way, did you notice our recent 007 self-hosting effort?
20:00 masak it's terribly exciting :>
20:02 cognominal One motivation is that am designing different slangs with the same grammar.
20:03 cognominal yea, I will watch that
20:03 masak cognominal: let me try to explain where I'm coming from with slangs
20:03 masak I see many things already defined in Perl 6 as being slangs
20:03 masak regexes
20:03 masak qq strings
20:03 masak object literals
20:03 masak basically, any time you're switching "parsing mode", you're switching slangs
20:04 masak heck, the expression parser could be seen as a slang
20:05 masak from my point of view, a good/rich slang is one that allows bi-directional communication with its host language
20:05 masak one diretion typically being simply returning values out to the host language
20:05 masak and the other direction typically being a form of interpolation
20:06 masak by pulling that off well, the slang manages to be "transparent", and largely symbiotic with the host
20:06 cognominal yea  literals. not necessarily objects, should definitvely exposed as slangs. One may want integer syntax without the whole of HLL::Grammar.
20:06 cognominal so protoregex are often just a degenerated slang
20:07 masak in a sense, Perl 6 is a successful conglomeration of small slangs
20:08 vendethiel JSX!
20:08 cognominal but the compositionality is not sufficiently apparent
20:09 masak getting the composability right is the holy grail, yes
20:11 masak and it's a sliding scale too, in a way -- for example, many of the "special forms", like `if` and `loop` and `sub`, could be considered slangs... but I think it's more fruitful to consider them to be a special case, namely statement macros
20:12 masak if the goal is extensibility by the module author, then hanging things on the "statement macro" hook is going to be a winning move
20:12 cognominal vendethiel, my project about generating QAST tree with grammar ia getting bigger. Now, besides the AST phaser, I will have an ATM phaser to pattern match on trees. An probably a QAST phaser because AST is writing a QAST tree to write a QAST tree. So better go with an intermediate step.
20:12 masak vendethiel: JSX is an excellent example of a symbiotic slang, yes
20:12 vendethiel O_o
20:12 vendethiel sounds hug
20:12 vendethiel sounds huge
20:12 masak well -- sounds hug, too :D
20:17 cognominal masak, are you making progress about macros? I have downloaded papers about scala macros but did not dare to read them.
20:18 masak cognominal: I feel I am making progress, yes
20:22 cognominal Have you seen that Apple has blatantly copied @worrydreams(Bret Victor) with their swift playground ?
20:22 masak yes, I like what they're doing there
20:22 masak I didn't take it as "blatantly copied", more like "hey, we should listen to this guy" and then forging ahead, doing what no-one else is doing yet
20:23 masak cognominal: if you haven't seen https://gist.github.com/masak/13210c51f034f931af0c yet, I heartily recommend skimming it
20:23 cognominal http://appleinsider.com/articles/16/06/13/apple-brings-coding-to-the-ipad-with-swift-playground
20:23 masak oh, wow
20:23 masak coding on the iPad? sounds excellent!
20:26 cognominal if it is a secret gist, I probably not have read it
20:33 cognominal About the ipad. It is aaid that stenography is faster than typing. We have yet to invent a stenography of programming
20:34 cognominal clicking on existing names instead of typing them would already go a long wat
20:47 vendethiel I'm not feeling awake enough to read your gist right now, cognominal
20:47 vendethiel will do tomorrow
20:47 masak it is a secret gist. I again recommend it.
22:18 cognominal joined #6macros
23:21 cognominal joined #6macros

| Channels | #6macros index | Today | | Search | Google Search | Plain-Text | summary