From owner-freebsd-arch@FreeBSD.ORG Wed Oct 31 19:05:31 2007 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 18A0C16A41A for ; Wed, 31 Oct 2007 19:05:31 +0000 (UTC) (envelope-from freebsd-arch@m.gmane.org) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by mx1.freebsd.org (Postfix) with ESMTP id C60E113C4A6 for ; Wed, 31 Oct 2007 19:05:30 +0000 (UTC) (envelope-from freebsd-arch@m.gmane.org) Received: from root by ciao.gmane.org with local (Exim 4.43) id 1InHT4-00081s-2T for freebsd-arch@freebsd.org; Wed, 31 Oct 2007 17:35:02 +0000 Received: from xdsl-10260.wroclaw.dialog.net.pl ([84.40.242.20]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 31 Oct 2007 17:35:02 +0000 Received: from mwisnicki+freebsd by xdsl-10260.wroclaw.dialog.net.pl with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 31 Oct 2007 17:35:02 +0000 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-arch@freebsd.org From: Marcin Wisnicki Date: Wed, 31 Oct 2007 17:19:19 +0000 (UTC) Lines: 21 Message-ID: References: <9bbcef730710300648s4a4162a9x25e5a092111eaab9@mail.gmail.com> <2979.1193779624@critter.freebsd.dk> <9bbcef730710301519p2931006aq5ba3a94fa1cc67c5@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: xdsl-10260.wroclaw.dialog.net.pl User-Agent: Pan/0.131 (Ghosts: First Variation) Sender: news Subject: Re: C++ in the kernel X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Oct 2007 19:05:31 -0000 On Tue, 30 Oct 2007 23:19:50 +0100, Ivan Voras wrote: > Re: C++: This: > > for (vector::iterator it = v.begin(); it != v.end(); ++it) > > still looks pretty ugly but at least it's known to almost any CS/IT > undergrad out there. > > My personal choice of a "C++ done right" language is D, it has this > variant: > > foreach(i, a; args) > writefln("args[%d] = '%s'", i, a); You can do something like this in c++, for example with boost::foreach: #include #define foreach BOOST_FOREACH foreach(int i, v) { }