2014-07-29 00:35
ELLIOTTCABLE changed the topic of #elliottcable to: a
_better_ cult ˙ ͜ʟ˙ embrace, extend, extinguish.
01:14
eligrey has joined #elliottcable
02:12
alexgordon has quit [Quit: My iMac has gone to sleep. ZZZzzz…]
03:49
<
purr >
<ELLIOTTCABLE> dicks are pretty resilient.
03:49
<
purr >
<ec> snot nazi.
03:49
<
purr >
<elliottcable> sephr ⑊ nothx
05:20
<
joelteon >
so I'm doing development with nodejs this week
05:21
<
joelteon >
i'm surprised how bearable it is once i've used all the hacks people have written to try to make it maintainable
05:22
<
vigs >
Well…unmaintainable JS is more the dev's fault than it is the language's, imo.
05:22
<
joelteon >
i guess so
05:22
<
joelteon >
but i mean, the entirety of nodejs is dedicated to making stack traces unusable
05:22
<
joelteon >
but that still is the dev's fault
05:22
<
Cheery >
depends on the dev
05:22
<
joelteon >
it's just all the devs
05:23
<
vigs >
It's devs all the way down
05:23
<
vigs >
DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS
05:23
<
joelteon >
but then again
05:23
<
joelteon >
the language was written by developers
05:24
<
joelteon >
so I guess you can't blame javascript for anything, really
05:24
<
Cheery >
joelteon: actually CPS passing wouldn't interfere with stack traces, if you have patience to let the compiler do it for you
05:24
<
vigs >
well, JS was an implementation of ecmascript
05:24
<
Cheery >
JS guys haven't figured this out yet
05:24
<
joelteon >
"compiler"?
05:24
<
joelteon >
what's that
05:24
<
Cheery >
also it's the fault of the developer if you use crap language
05:25
<
vigs >
* interpreter?
05:25
<
Cheery >
joelteon: well the .js doesn't run directly. it is 'compiled' to something that's easier to work with
05:25
<
vigs >
Cheery: tell more pls
05:26
* vigs
is genuinely interested
05:26
<
Cheery >
I wonder what my sarcasm detector beeps at..
05:26
<
vigs >
That wasn't sarcasm
05:26
<
vigs >
plsplsplsplspls tell
05:27
<
vigs >
as I understood it, the JS interpreter performs no compilations or optimizations
05:27
<
Cheery >
ohwell. yeah. but it's obvious pretty much. you compile .js to bytecode or something else one can optimize.
05:27
<
vigs >
unless it's a JIT compiler, à la pypy for Python
05:27
<
Cheery >
JIT is an optimization
05:27
<
Cheery >
as well as bytecode interpreter is an optimization
05:28
<
Cheery >
to use them, you have compilation step after parsing.
05:28
<
vigs >
do most interpreters do optimizations?
05:28
* vigs
doesn't have a very in-depth understanding of compilers yet
05:29
<
Cheery >
yes. as most interpreters run bytecode, that is an optimization alone
05:30
<
Cheery >
as what comes to CPS, I mean for the style of passing a callback to determine what to do next
05:30
<
Cheery >
the 'async' programming style of javascript
05:30
<
Cheery >
it's loosely equivalent to doing a CPS transform for your code.
05:31
<
Cheery >
the possibilities enabled are similar. also you end up with closures to represent control flow.
05:31
<
Cheery >
except that the CPS transform is done by the compiler
05:32
<
Cheery >
async programming is premature CPS transform, done by the human
05:32
<
vigs >
Ah yes, the Child Protective Services transform. (kidding)
05:32
<
Cheery >
oh no. that'd be Diaper transfrom.
05:32
<
joelteon >
nodejs is lightweight threading, which compilers can do, but it forces the human to do it instead
05:33
<
joelteon >
whats it called, preemptive threading
05:33
<
joelteon >
i can't remember the phrase
05:33
<
Cheery >
joelteon: yup. in other words.
05:33
<
Cheery >
joelteon: but doing it by hand sucks.. a lot
05:33
<
joelteon >
i like when i miss a callback and then my service hangs forever
05:34
<
joelteon >
yeah, so that's my main complaint about javascript
05:35
<
vigs >
I hated it when I took that class on it, but now that I """"get"""" it, I actually enjoy it
05:35
<
vigs >
it's my go-to prototyping language
05:35
<
vigs >
(yes, pun intended)
05:36
<
joelteon >
makes sense
05:36
<
vigs >
there was one assignment that sticks with me as the defining "fuck javascript" moment
05:37
Rusky has quit [Quit: Leaving.]
05:37
<
vigs >
it was to implement a double-ended queue
05:37
<
vigs >
the catch was, there was a very strict nonwhitespace character limit
05:37
Rusky has joined #elliottcable
05:39
gq has quit [Ping timeout: 255 seconds]
05:39
<
joelteon >
what if there's a false in the queue
05:39
Rusky has quit [Client Quit]
05:39
<
vigs >
(╯°□°)╯︵ ʇdᴉɹɔsɐʌɐɾ
05:39
<
vigs >
re: that what if— then that sucks
05:39
<
joelteon >
it's not javascript's fault, that's a terrible assignment
05:39
<
vigs >
(there was a set of tests the prof gave us that it had to pass)
05:40
Rusky has joined #elliottcable
05:40
<
joelteon >
i'm glad i never went to school
05:40
<
joelteon >
well, big boy school
05:40
<
vigs >
but yeah, it totally was a terrible assignment. If I saw this code IRL, I'd tell the dev to stop being a clever little shit and to write readable code. That SHOULD be its own object with a constructor and shit
05:44
<
vigs >
joelteon: that's awesome
05:44
<
vigs >
I wish I didn't feel like I have a massive technical defecit that makes school basically required for me
05:45
<
joelteon >
yay it actually smells good in my room
05:45
<
vigs >
I should work on that
05:45
<
joelteon >
mine used to smell like urine and i wasn't sure why
05:49
<
vigs >
groooooossss
06:03
<
Cheery >
already had the screenshot, but decided to back up my work. so you got a chance to see how the new layouter looks
06:04
<
Cheery >
related blog post. probably not the only one
06:04
<
Cheery >
going to clean the post a bit today
06:05
<
Cheery >
removing sentences that I can remove, perhaps adding images
06:32
Sorella has quit [Quit: Ex-Chat]
06:32
Sorella has joined #elliottcable
06:32
Sorella has joined #elliottcable
06:56
eligrey has quit [Quit: Leaving]
07:11
Sgeo has quit [Ping timeout: 240 seconds]
07:49
Sgeo has joined #elliottcable
09:04
prophile has joined #elliottcable
09:26
<
Cheery >
finished the pruning
09:27
<
Cheery >
now it should be readable. :)
10:30
gq has joined #elliottcable
11:30
nuck has quit [Read error: Connection reset by peer]
11:35
nuck has joined #elliottcable
12:10
Sgeo has quit [Read error: Connection reset by peer]
13:16
gq has quit [Quit: Connection reset by bear.]
13:16
gq has joined #elliottcable
14:23
alexgordon has joined #elliottcable
14:29
manveru_ has joined #elliottcable
14:29
amatecha_ has joined #elliottcable
14:31
russfrank has joined #elliottcable
14:32
rf has quit [Ping timeout: 260 seconds]
14:32
manveru has quit [Ping timeout: 260 seconds]
14:32
amatecha has quit [Ping timeout: 260 seconds]
14:33
manveru_ is now known as manveru
14:37
amatecha_ is now known as amatecha
14:49
gq has joined #elliottcable
15:20
gozala has joined #elliottcable
16:43
prophile has quit [Quit: The Game]
16:55
sharkbot has quit [Remote host closed the connection]
16:55
sharkbot has joined #elliottcable
17:39
prophile has joined #elliottcable
17:39
prophile has quit [Client Quit]
17:45
alexgordon has quit [Read error: Connection reset by peer]
17:55
eligrey has joined #elliottcable
17:56
prophile has joined #elliottcable
18:13
prophile has quit [Quit: The Game]
19:27
prophile has joined #elliottcable
20:20
alexgordon has joined #elliottcable
20:56
joelteon has quit [Ping timeout: 240 seconds]
21:50
prophile has quit [Quit: The Game]
21:51
prophile has joined #elliottcable
21:56
prophile has quit [Ping timeout: 272 seconds]
22:14
jeannicolas has quit [Ping timeout: 246 seconds]
22:15
jeannicolas has joined #elliottcable
23:20
<
devyn >
it has to be the most verbose RPC format I've ever seen
23:20
<
devyn >
and it's hella annoying to generate