From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [Qemu-devel] KVM call minutes for November 29 Date: Tue, 29 Nov 2011 16:59:51 -0600 Message-ID: <4ED563E7.3040508@codemonkey.ws> References: <8762i3nczx.fsf@trasno.mitica> <4ED50F7C.2040903@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: quintela@redhat.com, Developers qemu-devel , KVM devel mailing list To: Avi Kivity Return-path: Received: from mail-iy0-f174.google.com ([209.85.210.174]:60184 "EHLO mail-iy0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753308Ab1K2W74 (ORCPT ); Tue, 29 Nov 2011 17:59:56 -0500 Received: by iage36 with SMTP id e36so11274086iag.19 for ; Tue, 29 Nov 2011 14:59:55 -0800 (PST) In-Reply-To: <4ED50F7C.2040903@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On 11/29/2011 10:59 AM, Avi Kivity wrote: > On 11/29/2011 05:51 PM, Juan Quintela wrote: >> How to do high level stuff? >> - python? >> > > One of the disadvantages of the various scripting languages is the lack > of static type checking, which makes it harder to do full sweeps of the > source for API changes, relying on the compiler to catch type (or other) > errors. This is less interesting to me (figuring out the perfectest language to use). I think what's more interesting is the practical execution of something like this. Just assuming we used python (since that's what I know best), I think we could do something like this: 1) We could write a binding layer to expose the QMP interface as a python module. This would be very little binding code but would bring a bunch of functionality to python bits. 2) We could then add a binding layer to let python code implement a character device. 3) We could implement the HMP logic in Python. 4) We could add a GTK widget to replace the SDL displaystate and then use python code to implement a more friendly UI. Most of the interaction with such an interface would probably go through (1). With clever coding, you could probably let the UI also be stand alone using GtkVnc in place of the builtin widget and using a remote interface for QMP. Regards, Anthony Liguori > > On the other hand, the statically typed languages usually have more > boilerplate. Since one of the goals is to simplify things, this > indicates the need for a language with type inference. > > On the third hand, languages with type inferences are still immature > (golang?), so we probably need to keep this discussion going until an > obvious choice presents itself. >