These are chat archives for liam4/tlnccuwagnf

28th
Apr 2016
MegaApuTurkUltra
@MegaApuTurkUltra
Apr 28 2016 00:57 UTC
^
(quasar) nebula
@towerofnix
Apr 28 2016 01:22 UTC
@MegaApuTurkUltra @Arinerron tl;dr I implemented #34 i.e. (arg1 fn arg2) which allows for things like (2 + 4), (7 < 2), etc
also I felt a little good about myself by having a bath and realizing the solution to a problem while having that bath
see liam4/tlnccuwagnf@15df592 :P
+1 for the boogie gif.
Aaron Esau
@Arinerron
Apr 28 2016 02:54 UTC
^ +1 for +1'ing the boogie gif.
(quasar) nebula
@towerofnix
Apr 28 2016 03:09 UTC
:P
alex
@heyitsmeuralex
Apr 28 2016 06:35 UTC
Wait did you get async return() working
:package:
alex
@heyitsmeuralex
Apr 28 2016 10:23 UTC
ooo
async returns
alex
@heyitsmeuralex
Apr 28 2016 16:40 UTC
@liam4 how does one define an async function within a global-module (written in js)?
i.e. does something like new lib.asyncLFunction(fn) exist?
(quasar) nebula
@towerofnix
Apr 28 2016 16:41 UTC
Async lib functions ≠ exist yet
alex
@heyitsmeuralex
Apr 28 2016 16:41 UTC
righty.
(quasar) nebula
@towerofnix
Apr 28 2016 16:41 UTC
Right now async functions have .isAsynchronous = true
alex
@heyitsmeuralex
Apr 28 2016 16:42 UTC
right.
so, uh
thats sad
:P
(quasar) nebula
@towerofnix
Apr 28 2016 16:43 UTC
plzzzz implement
alex
@heyitsmeuralex
Apr 28 2016 16:43 UTC
Me?
:P
(quasar) nebula
@towerofnix
Apr 28 2016 16:43 UTC
no
I'm quoting
your head
alex
@heyitsmeuralex
Apr 28 2016 16:43 UTC
lol
(quasar) nebula
@towerofnix
Apr 28 2016 16:43 UTC
meta
alex
@heyitsmeuralex
Apr 28 2016 16:43 UTC
are you implementing atm or shall I try
because I have nothing to do
(quasar) nebula
@towerofnix
Apr 28 2016 16:44 UTC
I mean you can implement it if you want :P
basically replace one line
alex
@heyitsmeuralex
Apr 28 2016 16:44 UTC
xD
(quasar) nebula
@towerofnix
Apr 28 2016 16:44 UTC
fnToken.fn()
with
await fnToken.fn()
:D
alex
@heyitsmeuralex
Apr 28 2016 16:44 UTC
welp
(quasar) nebula
@towerofnix
Apr 28 2016 16:44 UTC
<3
I think.
alex
@heyitsmeuralex
Apr 28 2016 16:44 UTC
presses Easy button
Touch wood.
blob

OH NOES

(quasar) nebula
@towerofnix
Apr 28 2016 16:45 UTC

OH MY GOODNESS NO IT'S ALL HORRIBLE

IT'S A SYNTAX ERROR

alex
@heyitsmeuralex
Apr 28 2016 16:45 UTC
:P
Wait, do asyncy things actually run in parallel?
ret => return; ew
(quasar) nebula
@towerofnix
Apr 28 2016 16:47 UTC
Nope!
alex
@heyitsmeuralex
Apr 28 2016 16:47 UTC
Lol
what's the point then?
:P
(quasar) nebula
@towerofnix
Apr 28 2016 16:48 UTC
Easier writing
alex
@heyitsmeuralex
Apr 28 2016 16:48 UTC
kek
(quasar) nebula
@towerofnix
Apr 28 2016 16:48 UTC
Oh
hmm
File reads and writes can happen in parallel.
Same with network stuff.
alex
@heyitsmeuralex
Apr 28 2016 16:48 UTC
can?
Fancy.
(quasar) nebula
@towerofnix
Apr 28 2016 16:48 UTC
Multiple pieices of code logic don't happen in parallel.
alex
@heyitsmeuralex
Apr 28 2016 16:49 UTC
Right.
But events do?
:shipit:
(quasar) nebula
@towerofnix
Apr 28 2016 16:49 UTC
Can because there's .sync methods too :P
Events?
alex
@heyitsmeuralex
Apr 28 2016 16:49 UTC
I mean, if we made a proper http module for tulun
and lots of people called at the same time
would they run asyncronously?
(quasar) nebula
@towerofnix
Apr 28 2016 16:49 UTC
You deal with one person at a time.
:)
alex
@heyitsmeuralex
Apr 28 2016 16:49 UTC
:P
node > tulun
but whatever
xD
(quasar) nebula
@towerofnix
Apr 28 2016 16:50 UTC
tbh idk how or if node deals with multiple callers at once.
alex
@heyitsmeuralex
Apr 28 2016 16:50 UTC
It does
:P
(quasar) nebula
@towerofnix
Apr 28 2016 16:50 UTC
I-I'm not a server dev!
:P
alex
@heyitsmeuralex
Apr 28 2016 16:50 UTC
je suis
:shipit:
(quasar) nebula
@towerofnix
Apr 28 2016 16:51 UTC
k, so explain handling multiple 'callers' at once.
alex
@heyitsmeuralex
Apr 28 2016 16:51 UTC
well
events
:P
(quasar) nebula
@towerofnix
Apr 28 2016 16:51 UTC
Code demo please? :P
Oh.
Well, yeah.
I see what you mean.
Yep, it does deal with multiple people at once in that case.
All the logic happens in a single thread but network stuff is done over multiple threads, right?
alex
@heyitsmeuralex
Apr 28 2016 16:52 UTC
when => use('when');

when.somebody-does-something({
  sleep-async(3);
  print('wow!');
});

when.ooo({
  sleep-async(3);
  print('wow!');
});

when.emit('ooo');
when.emit('somebody-does-something');
this.
both sleep-asyncs should run at the same time
All the logic happens in a single thread but network stuff is done over multiple threads, right?
guess so
:smile:
(quasar) nebula
@towerofnix
Apr 28 2016 16:53 UTC
+1, both sleeps happen at the same time
alex
@heyitsmeuralex
Apr 28 2016 16:54 UTC
would tulun do that?
:P
(quasar) nebula
@towerofnix
Apr 28 2016 16:54 UTC
Yes.
alex
@heyitsmeuralex
Apr 28 2016 16:54 UTC
Like, does it already?
:shipit:
(quasar) nebula
@towerofnix
Apr 28 2016 16:54 UTC
No.
:)
alex
@heyitsmeuralex
Apr 28 2016 16:54 UTC
lol
(quasar) nebula
@towerofnix
Apr 28 2016 16:54 UTC
don't :shipit: :P
alex
@heyitsmeuralex
Apr 28 2016 16:54 UTC
cue ksi sad song
(quasar) nebula
@towerofnix
Apr 28 2016 16:54 UTC
Oh.
I mean
yeah
it does
but sleep-async isn't implemented
that's like
alex
@heyitsmeuralex
Apr 28 2016 16:54 UTC
:P
ik
(quasar) nebula
@towerofnix
Apr 28 2016 16:54 UTC
part of JS
alex
@heyitsmeuralex
Apr 28 2016 16:55 UTC
mm
hehe
(quasar) nebula
@towerofnix
Apr 28 2016 16:57 UTC
?
alex
@heyitsmeuralex
Apr 28 2016 16:57 UTC
added process.exit(code);
  variables['process'] = new lib.Variable(lib.toLObject({
    exit: new lib.LFunction(function([code]) {
      code = code || 0
      process.exit(code)
    })
  }))
nvm
cool!
alex
@heyitsmeuralex
Apr 28 2016 16:57 UTC
:P
(quasar) nebula
@towerofnix
Apr 28 2016 16:58 UTC
I was worried you put a process.exit somewhere in the source :P
alex
@heyitsmeuralex
Apr 28 2016 16:58 UTC
lol
I need to figure out why my atom grammar isn't highlighting dash-case properly
blob
I like my hidden semicolons :P
(quasar) nebula
@towerofnix
Apr 28 2016 17:00 UTC
:P
Might make a sublime theme for tul files for fun.
alex
@heyitsmeuralex
Apr 28 2016 17:01 UTC
:P
Atom grammars are hard
they're undocumented
ooo
apm link is a thing :D
that helps a tonne
@liam4 maybe make your theme as a textmate one so we can convert it to atom/sublime respectively
(quasar) nebula
@towerofnix
Apr 28 2016 17:05 UTC
YAML-tmLanguage compiles to tmTheme
alex
@heyitsmeuralex
Apr 28 2016 17:05 UTC
In english kthx
:shipit:
(quasar) nebula
@towerofnix
Apr 28 2016 17:25 UTC
(?!-)(?<=\W)return(?!-)(?=\W)
Phew, that regex was a tough one
alex
@heyitsmeuralex
Apr 28 2016 17:25 UTC
:P
what does it do?
(quasar) nebula
@towerofnix
Apr 28 2016 17:25 UTC
It matches return surrounded by separator characters but not dashes
alex
@heyitsmeuralex
Apr 28 2016 17:25 UTC
also what are you writing this in? :P
(quasar) nebula
@towerofnix
Apr 28 2016 17:25 UTC
YAML-tmLanguage
alex
@heyitsmeuralex
Apr 28 2016 17:25 UTC
righty
(quasar) nebula
@towerofnix
Apr 28 2016 17:25 UTC
:D
alex
@heyitsmeuralex
Apr 28 2016 17:26 UTC
so that'll transpile to atom syntax rite?
:shipit:
(quasar) nebula
@towerofnix
Apr 28 2016 17:26 UTC
Screen Shot 2016-04-28 at 2.25.50 PM.png
it'll transpile to tmLanguage
which apparently transpiles to atom right?
alex
@heyitsmeuralex
Apr 28 2016 17:26 UTC
yep
can you repoify this or something so I can add to it?
:shipit:
(quasar) nebula
@towerofnix
Apr 28 2016 17:27 UTC
When it works decently ok
alex
@heyitsmeuralex
Apr 28 2016 17:27 UTC
pleaaaaaaaaase?
btw: (+|-|/|*|<|>|=|return|process|print-debug|add|divide|minus|multiply|Variable|print|concat|if|ifel|obj|array|not|and|or|lt|gt|eq|is|loop|use|make|change|value|from|exists)
all the builtins!
(quasar) nebula
@towerofnix
Apr 28 2016 17:27 UTC
thanks :P
(quasar) nebula
@towerofnix
Apr 28 2016 17:33 UTC
Screen Shot 2016-04-28 at 2.32.35 PM.png
alex
@heyitsmeuralex
Apr 28 2016 17:33 UTC
oooo
does # span multilines?
(quasar) nebula
@towerofnix
Apr 28 2016 17:33 UTC
aaaaaaanope.
alex
@heyitsmeuralex
Apr 28 2016 17:33 UTC
:P
(quasar) nebula
@towerofnix
Apr 28 2016 17:33 UTC
not sure why
thinks
alex
@heyitsmeuralex
Apr 28 2016 17:33 UTC
'comments':
    'begin': '(^[ \\t]+)?(?=#)'
    'beginCaptures':
      '1':
        'name': 'punctuation.whitespace.comment.leading.python'
    'end': '(?!\\G)'
    'patterns': [
      {
        'begin': '(#|\#\:)'
        'beginCaptures':
          '0':
            'name': 'punctuation.definition.comment.python'
        'end': '(#|\:\#)'
        'name': 'comment.line.number-sign.python'
      }
    ]
mine is this
(quasar) nebula
@towerofnix
Apr 28 2016 17:34 UTC
Mine is.. this.
- name: comment.line.number-sign.tulun
  match: (#[^#]*)
:P
alex
@heyitsmeuralex
Apr 28 2016 17:34 UTC
:P
PLEASE MAKE A REPO
I WANNA HELP/TRY
due to my syntax being terribad
btw what theme is that?
(quasar) nebula
@towerofnix
Apr 28 2016 17:39 UTC
LAZY
alex
@heyitsmeuralex
Apr 28 2016 17:39 UTC
?
:shipit:
(quasar) nebula
@towerofnix
Apr 28 2016 17:39 UTC
that's the name of the color scheme :P
alex
@heyitsmeuralex
Apr 28 2016 17:39 UTC
aha
(quasar) nebula
@towerofnix
Apr 28 2016 17:39 UTC
:shipit:
alex
@heyitsmeuralex
Apr 28 2016 17:40 UTC
lazy-light :P
PLEASE MAKE A REPO
(quasar) nebula
@towerofnix
Apr 28 2016 17:40 UTC
alex
@heyitsmeuralex
Apr 28 2016 17:40 UTC
mm
Just installed
although...
I quite like cake
ooo
merci
heh, power mode is awesome
alex
@heyitsmeuralex
Apr 28 2016 18:19 UTC
@liam4 Uh, how do I convert .tmLanguage files into .tmBundle s?
actually
I might just use Sublime from now on :P
ooo
ta-da
alex
@heyitsmeuralex
Apr 28 2016 19:35 UTC
Ugh...
...how do I install tulun.YAML-tmLanguage to sublime? :P
alex
@heyitsmeuralex
Apr 28 2016 19:54 UTC
nvm, works now :D
(quasar) nebula
@towerofnix
Apr 28 2016 20:10 UTC
Cool. For future reference, packagedev :P
alex
@heyitsmeuralex
Apr 28 2016 20:10 UTC
mm
Using that now
so, uh
(quasar) nebula
@towerofnix
Apr 28 2016 20:11 UTC
so, uh
uh
uhhhhhh
alex
@heyitsmeuralex
Apr 28 2016 20:11 UTC
- name: meta.function.tulun
  match: (async)? {
(quasar) nebula
@towerofnix
Apr 28 2016 20:11 UTC
um.
alex
@heyitsmeuralex
Apr 28 2016 20:11 UTC
why does this not work
I'm bad at regex/grammar
:P
(quasar) nebula
@towerofnix
Apr 28 2016 20:11 UTC
It's a regexp
Use \{
Escape the {
alex
@heyitsmeuralex
Apr 28 2016 20:11 UTC
kek
(quasar) nebula
@towerofnix
Apr 28 2016 20:11 UTC
:D
alex
@heyitsmeuralex
Apr 28 2016 20:11 UTC
hm
where are the name properties?
i.e. what can go there
(quasar) nebula
@towerofnix
Apr 28 2016 20:12 UTC
It should autocomplete.
Are you using PackageDev?
alex
@heyitsmeuralex
Apr 28 2016 20:13 UTC
oui
ah
I see
aha
das cool
alex
@heyitsmeuralex
Apr 28 2016 20:21 UTC
Hm...
trying to figure out how to select function arguments
(quasar) nebula
@towerofnix
Apr 28 2016 20:21 UTC
Do some inner match voodoo?
alex
@heyitsmeuralex
Apr 28 2016 20:21 UTC
e.g.
fn => (matchMe) { }
:P

I've got

- name: support.function.tulun
  match: async(.)?(?=\{)

working

(quasar) nebula
@towerofnix
Apr 28 2016 20:22 UTC
i.e.
begin: \(
end: \)
patterns:
- name: argument.foo
  match: baz.bar.matches-argument
alex
@heyitsmeuralex
Apr 28 2016 20:22 UTC
ah
thanks
(quasar) nebula
@towerofnix
Apr 28 2016 20:22 UTC
I.. think that should work :)
alex
@heyitsmeuralex
Apr 28 2016 20:23 UTC
I sort of meant when defining functions
xD
(quasar) nebula
@towerofnix
Apr 28 2016 20:23 UTC
Should still be the same thing :P
alex
@heyitsmeuralex
Apr 28 2016 20:23 UTC
righty
eh, whatever
can't be bothered
(quasar) nebula
@towerofnix
Apr 28 2016 20:25 UTC
xD
alex
@heyitsmeuralex
Apr 28 2016 20:25 UTC
:shipit:
pushed
(quasar) nebula
@towerofnix
Apr 28 2016 20:29 UTC
Yay!
alex
@heyitsmeuralex
Apr 28 2016 20:29 UTC
http://regexr.com/ is soooo helpful
:P
(quasar) nebula
@towerofnix
Apr 28 2016 20:29 UTC
I've used it before, yeah :P