Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #73771

Re: [OT] What can Nuitka do?

Date 2014-06-30 22:17 -0600
From Michael Torrie <torriem@gmail.com>
Subject Re: [OT] What can Nuitka do?
References (6 earlier) <CAPTjJmpbY0g6CLpxnB7a6hdYPqZjuRWmhkPZdQmRVkiOYQWb0g@mail.gmail.com> <2C380108368A4531B8E4C7287A344E6C@dev.null> <CAPTjJmr1KxYKdWZRoPJs+tahLngwC3AkKxXva7Wb9LNFkjp9bg@mail.gmail.com> <53B161DC.20708@gmail.com> <CAPTjJmqNvqqqa4UXRt8Mg2g81SOGWwK2+SW5eBvruh_Chv4ATw@mail.gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.11355.1404188271.18130.python-list@python.org> (permalink)

Show all headers | View raw


On 06/30/2014 07:36 AM, Chris Angelico wrote:
> Hmm. I'm not sure that it's necessarily that bad; I've done 3G-based
> X11 forwarding fairly successfully on occasion. Yes, it's potentially
> quite slow, but it certainly works - I've used SciTE, for instance,
> and I've used some GTK2 apps without problems. What do you mean by
> "modern toolkit"?

Modern toolkit is defined as anything that uses client-side rendering.
In the good old days of Motif and Xaw widgets, if a program wanted to
draw, the toolkit would instruct the server to draw primitives.
Rectangles, lines, etc.  Each widget would be created in its own window,
and events would be all handled on the server.  Unfortunately we quickly
hit some limits with that idea, as good and fast as it was.  First of
all, anti-aliased fonts were difficult to accomplish.  There were hacks
to do this early on, but it quickly became apparent that the actual
application could do a better job of it if it would just do the
rendering itself and have the X server draw it.  Not only anti-aliased
fonts, but also when you start talking about wanting to do layered
effects like alpha-blending.  All of this the app could do better and
more efficiently than the X server could, since the X server would have
had to round-trip to the app anyway to get the information since the X
server is in a different process (or different computer) and cannot
access the memory the app is using to store things.  Kieth Packard wrote
some X extensions to allow client-side rendering to be efficient and to
let the X server to handle RGBA images, and to composite them together.

Also, events in modern toolkits are done very differently than the
original X toolkits.  Instead of using multiple windows, clients now
just establish one window and then handle events and figure out what
widgets should receive the events client-side instead of server-side.
This allows handling of things like scrollable canvases.

Anyway, all of this improved the behavior and appearance of
applications.  When used locally, shared memory facilities make X pretty
fast, although latency is still quite high. There's no way to
synchronize frame redraws, so apps tear and stutter when you drag and
resize.  But over a network now, the nature of the X protocol means a
lot of round-trips to the server to do things. This is very apparent
when you run on a very slow connection. You might see widgets get drawn,
then erase, then drawn again.  Using a complex app like firefox, which
has another layer of abstraction over GTK that makes it even worse, is
very difficult on anything less than a LAN.  Or try a Java Swing app!
I've done it on occasion. I'd rather run Xvnc on the remote host and vnc
in than forward X.

FreeNX makes things very usable.
http://en.wikipedia.org/wiki/NX_technology describes how NX works.

I love that X11 apps work over a forward connection.  And I love that I
can run a remote window manager on a local X server if I wanted to.  But
I recognize X has it's problems and I can see how Wayland will
eventually be so much better while still letting me remote apps, which
is essential to me.

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

What can Nuitka do? CM <cmpython@gmail.com> - 2014-06-27 16:25 -0700
  Re: What can Nuitka do? Paul Sokolovsky <pmiscml@gmail.com> - 2014-06-28 02:44 +0300
    Re: What can Nuitka do? Rustom Mody <rustompmody@gmail.com> - 2014-06-27 19:10 -0700
      Re: What can Nuitka do? Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-06-28 03:09 +0000
        Re: What can Nuitka do? CM <cmpython@gmail.com> - 2014-06-27 20:44 -0700
          Re: What can Nuitka do? Michael Torrie <torriem@gmail.com> - 2014-06-27 22:14 -0600
          Re: What can Nuitka do? Chris Angelico <rosuav@gmail.com> - 2014-06-28 15:00 +1000
          Re: What can Nuitka do? "Gisle Vanem" <gvanem@yahoo.no> - 2014-06-28 12:39 +0200
            Re: What can Nuitka do? Roy Smith <roy@panix.com> - 2014-06-28 11:35 -0400
          Re: What can Nuitka do? Chris Angelico <rosuav@gmail.com> - 2014-06-29 01:16 +1000
          Re: [OT] What can Nuitka do? Michael Torrie <torriem@gmail.com> - 2014-06-30 07:10 -0600
          Re: [OT] What can Nuitka do? Chris Angelico <rosuav@gmail.com> - 2014-06-30 23:36 +1000
          Re: [OT] What can Nuitka do? Michael Torrie <torriem@gmail.com> - 2014-06-30 22:17 -0600
          Re: [OT] What can Nuitka do? Michael Torrie <torriem@gmail.com> - 2014-06-30 22:26 -0600
    Re: What can Nuitka do? CM <cmpython@gmail.com> - 2014-06-27 20:06 -0700
      Re: What can Nuitka do? Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-06-28 03:17 +0000
        Re: What can Nuitka do? CM <cmpython@gmail.com> - 2014-06-27 20:57 -0700
          Re: What can Nuitka do? Rustom Mody <rustompmody@gmail.com> - 2014-06-27 21:11 -0700
          Re: What can Nuitka do? Stefan Behnel <stefan_ml@behnel.de> - 2014-06-28 06:23 +0200
            Re: What can Nuitka do? CM <cmpython@gmail.com> - 2014-06-27 21:45 -0700
              Re: What can Nuitka do? Chris Angelico <rosuav@gmail.com> - 2014-06-28 15:02 +1000
                Re: What can Nuitka do? CM <cmpython@gmail.com> - 2014-06-27 22:40 -0700
                Re: What can Nuitka do? Chris Angelico <rosuav@gmail.com> - 2014-06-28 16:16 +1000
                Fwd: What can Nuitka do? Chris “Kwpolska” Warrick <kwpolska@gmail.com> - 2014-06-28 09:45 +0200
      Re: What can Nuitka do? Michael Torrie <torriem@gmail.com> - 2014-06-27 21:28 -0600
        Re: What can Nuitka do? Rustom Mody <rustompmody@gmail.com> - 2014-06-27 20:40 -0700

csiph-web