Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
gfxmonk
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
9 ms
·
31.
▲
by
gfxmonk
13y ago
StratifiedJS allows you to write callback-less async code, including full support for exceptions thrown from async code (stacktraces and all): http://onilabs.com/stratifiedjs (disclosure: I work at Oni Labs) It does extend
32.
▲
by
gfxmonk
13y ago
For a more application-level (rather than OS-level) approach that shares a lot of good ideas with NixOS, there's also ZeroInstall ( http://0install.net ). There's a comparison with Nix at http://0install.net/comparison.html#Nix .
33.
▲
by
gfxmonk
14y ago
This looks great (and sorely needed). Unfortunately, console vim lacks the ability to recognise a bunch of useful keybindings (custom ones that I've grown quite fond of, it mostly has trouble with ctrl e.g ctrl+space, ctrl+tab). Also, the c
34.
▲
by
gfxmonk
15y ago
The thing about piep (and other such tools) is that they can make some reasonable assumptions that would typically be a bad choice for a generic language - things like having global variables for commonly used items, making assumptions abou
35.
▲
by
gfxmonk
15y ago
You absolutely can use `pip`, if you want. I made sure of that (or at least tested it once), because I know it's widely used and convenient. But I personally think it's a terrible way to install and distribute software, and would love for m
36.
▲
by
gfxmonk
15y ago
somewhat, although that seems fairly heavily geared towards clusters of machines, which I've not really tried to address with piep. I've used gnu-parallel and cluster-ssh in the past for that sort of thing, though I'd likely prefer a python
37.
▲
by
gfxmonk
15y ago
Why is that sad? Because it goes against python community norms, or some other reason?
38.
▲
by
gfxmonk
15y ago
It's inspired by a similar tool called `pyp`, which I considered extending but ended up going my own route instead. Here's some more information on why: http://gfxmonk.net/2012/03/28/why-piep.html
39.
▲
Piep: bringing the power of python to stream editing
(gfxmonk.net)
47 points
by
gfxmonk
15y ago
|
15 comments
40.
▲
by
gfxmonk
15y ago
Imagine function a calls b() and function b calls c(), and they're all sync. Now, let's say c() changes and needs to call someAsyncFunction() and provide a callback. Which means c itself needs to take a callback. Which means b needs to prov
41.
▲
by
gfxmonk
15y ago
Looks concise, but doesn't much help with the fundamental problems of callback code - exceptions don't work right, and "callbacks all the way down" whenever something starts having any async computation.
42.
▲
by
gfxmonk
15y ago
got a link? I'd be interested to know how it deals with errors / exceptions, for example.
43.
▲
by
gfxmonk
15y ago
Addressing the same problem (and more) in both node and the browser, via compiling-JS-to-JS: http://onilabs.com/stratifiedjs (disclaimer: I am the guy who worked on the now-defunct `defer` support in Coffeescript, and am now working with
44.
▲
by
gfxmonk
15y ago
Yes. I don't know if it was due to a weird environment variable or something, but when I installed RVM it got itself into an infinite loop sometimes when I did `cd`. I reported a bug, but the author couldn't reproduce or fix it. So now I re
45.
▲
by
gfxmonk
15y ago
A few differences, yeah. You get to keep the gnome bling (eg the overlay window). It also supports direct manipulation (mouse moving / resizing) and overlapping windows. Oh, and compositing works. Plus, the floating mode isn't bad ;)
46.
▲
by
gfxmonk
15y ago
The layout behaviour in both shellahape and bluetile is per-workspace.
47.
▲
by
gfxmonk
15y ago
https://launchpad.net/screenkey/ Had to hack it up a bit to show the shift key, and only the most recent keypress. And gnome-shell-list has built in screen recording.
48.
▲
I turned gnome-shell into a tiling window manager
(gfxmonk.net)
45 points
by
gfxmonk
15y ago
|
21 comments
49.
▲
Why Zero-Install Will Succeed
(gfxmonk.net)
1 points
by
gfxmonk
16y ago
|
0 comments
50.
▲
by
gfxmonk
16y ago
Regarding transformations of returns, the initial implementation added an anonymous callback argument and converted returns into using it. But that takes the option of using the callback out of the programmer's hands, and is entirely non-ob
51.
▲
by
gfxmonk
16y ago
I'd like to see an example of nontrivial asynchronous code that isn't at least a little awkward. continuations may well be inefficient, it depends on the runtime. `defer` does not implement real continuations, so that's largely irrelevant
52.
▲
by
gfxmonk
16y ago
Thanks, good point. I actually meant to reference scheme, not smalltalk - as I believe that's where continuations were first done. I believe it is provided by the runtime in scheme (but still, not the compiler). I've corrected the post now.
53.
▲
Defer: Taming asynchronous javascript with coffeescript
(gfxmonk.net)
69 points
by
gfxmonk
16y ago
|
17 comments
54.
▲
by
gfxmonk
17y ago
If you're worried about browser security, there's a command-line reimplementation in python that a friend and I wrote: http://github.com/gfxmonk/supergenpass Less convenient, but much less likely to leak your passwords via the browser...