Re: [computer-go] OT: XML [was fairly OT: Language]

2007-11-14 Thread Darren Cook
[XML] is like going backwards to the 60ies (OK, there are some thing XML is good for -- is't developed as HTML successor and in this area XML has quite some advantages; in some cases it's also good as intermediate data exchange format, but not always; as an primary format to save data in

Re: [computer-go] OT: XML [was fairly OT: Language]

2007-11-14 Thread Benjamin Teuber
You could use YAML/JSON to keep all information without all XML overhead.. *: The first thing I do with most XML files that I need to do anything serious with is turn them into a csv file (unless the data is genuinely hierarchical, and collapsing it is unreasonable, but that is rare)

Re: [computer-go] Solving Go

2007-11-14 Thread Harri Salakoski
If black plays first move on corner, white wins by 9 points. Hmm does white also capture that first stone and win 10 points. I am fixing search algorithm, which was little faulty as not done small board investigations for some time. So if there is list for right scores in different rule sets

Re: [computer-go] Language

2007-11-14 Thread Jacques Basaldúa
Don Dailey wrote: My Go program doesn't use any libraries except the standard C libraries. I agree at 99.9% !! The only exception in my case is SFMT. http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/index.html SFMT is 100% clean C software, easy to compile, easy to use and free. A good

Re: [computer-go] Language

2007-11-14 Thread William Harold Newman
On Tue, Nov 13, 2007 at 11:57:30PM +0100, Benjamin Teuber wrote: On Nov 13, 2007 10:18 PM, Nick Apperson [EMAIL PROTECTED] wrote: With the next generation of C++ with variadic templates I think C++ may overtake Lisp for metaprogramming, but I don't know enough to really make that claim.

Re: [computer-go] Language

2007-11-14 Thread Don Dailey
I don't have any problems with libraries, just ones that are gratuitously introduced for no good reason. I'm the first one to use a needed library. Also, now that I think about it, I do use Mersenne Twister - I just forgot about it because this was a late addition to my program. I will look

Re: [computer-go] Language

2007-11-14 Thread steve uurtamo
you guys are forgetting *all* about internationalization. i mean, do you really think that i can parse that xml if i don't even know what character set i'm supposed to be using? s. - Original Message From: Nick Apperson [EMAIL PROTECTED] To: computer-go computer-go@computer-go.org

Re: [computer-go] Language

2007-11-14 Thread Lars Nilsson
On 11/14/07, steve uurtamo [EMAIL PROTECTED] wrote: you guys are forgetting *all* about internationalization. i mean, do you really think that i can parse that xml if i don't even know what character set i'm supposed to be using? s. No need to worry. It's UTF-8 if you don't specify.

Re: [computer-go] Language

2007-11-14 Thread steve uurtamo
And it's not fast either. Free() has a reputation of being slow, and that's not surprising if you look at the way it is almost always implemented: scanning a list of addresses in order to amalgamate the newly freed memory with adjacent free areas. this is a burden for the OS, not a defect in

Re: [computer-go] Language

2007-11-14 Thread steve uurtamo
whew. i need to switch out my ascii, then. s. - Original Message From: Lars Nilsson [EMAIL PROTECTED] To: computer-go computer-go@computer-go.org Sent: Wednesday, November 14, 2007 10:10:15 AM Subject: Re: [computer-go] Language On 11/14/07, steve uurtamo [EMAIL PROTECTED] wrote:

Re: [computer-go] Language

2007-11-14 Thread Álvaro Begué
On Nov 14, 2007 10:54 AM, steve uurtamo [EMAIL PROTECTED] wrote: I just wanted to point out that free() is not a system call. The heap is handled by the C library, and the OS is mostly not involved in it. my bad. thanks. :) in that case, i'm impressed that i can do 2GB allocations.

Re: [computer-go] Language

2007-11-14 Thread Álvaro Begué
On Nov 14, 2007 10:25 AM, steve uurtamo [EMAIL PROTECTED] wrote: And it's not fast either. Free() has a reputation of being slow, and that's not surprising if you look at the way it is almost always implemented: scanning a list of addresses in order to amalgamate the newly freed memory

Re: [computer-go] Language

2007-11-14 Thread steve uurtamo
I just wanted to point out that free() is not a system call. The heap is handled by the C library, and the OS is mostly not involved in it. my bad. thanks. :) in that case, i'm impressed that i can do 2GB allocations. s.

Re: [computer-go] Language

2007-11-14 Thread steve uurtamo
thanks. i loaned my copy out (having never read that section, i'm sad that this is the case) and will have to go score another. s. - Original Message From: Álvaro Begué [EMAIL PROTECTED] To: computer-go computer-go@computer-go.org Sent: Wednesday, November 14, 2007 11:04:41 AM

Re: [computer-go] Language

2007-11-14 Thread Petr Baudis
On Wed, Nov 14, 2007 at 11:04:41AM -0500, Álvaro Begué wrote: On Nov 14, 2007 10:54 AM, steve uurtamo [EMAIL PROTECTED] wrote: I just wanted to point out that free() is not a system call. The heap is handled by the C library, and the OS is mostly not involved in it. my bad.

Re: [computer-go] Language

2007-11-14 Thread Hellwig Geisse
On Wed, 2007-11-14 at 07:25 -0800, steve uurtamo wrote: And it's not fast either. Free() has a reputation of being slow, and that's not surprising if you look at the way it is almost always implemented: scanning a list of addresses in order to amalgamate the newly freed memory with

[computer-go] KGS: kgs-chat GTP command in games

2007-11-14 Thread Petr Baudis
Hi, is anyone successfully using the kgs-chat GTP command in games? I cannot get kgsGtp to send me the command when I make a comment inside a game (as the bot's opponent). I receive the command when I private-message the bot. Is there a special trick I need to do to enable this inside games

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Lavergne Thomas
On Tue, Nov 13, 2007 at 04:11:24PM -0500, Imran Hendley wrote: I definitely understand the idea now, and it looks very good. However this implementation could break: Say we have pseudoliberties at intersections: 99,100,101. We sum those up to get 300, divide by the number of pseudoliberties

Re: [computer-go] KGS: kgs-chat GTP command in games

2007-11-14 Thread Jason House
On Wed, 2007-11-14 at 19:27 +0100, Petr Baudis wrote: Hi, is anyone successfully using the kgs-chat GTP command in games? I cannot get kgsGtp to send me the command when I make a comment inside a game (as the bot's opponent). I receive the command when I private-message the bot. Is there

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread John Tromp
On Nov 14, 2007 1:44 PM, Lavergne Thomas [EMAIL PROTECTED] wrote: Let elaborate a little more on this. We want one number for each cells : nums = {n1, n2, n3, ..., n81} And we want the following properties : for any a, b in nums : (a + b) / 2 is in nums -- a == b for

Re: [computer-go] KGS: kgs-chat GTP command in games

2007-11-14 Thread Rémi Coulom
Jason House wrote: On Wed, 2007-11-14 at 19:27 +0100, Petr Baudis wrote: Hi, is anyone successfully using the kgs-chat GTP command in games? I cannot get kgsGtp to send me the command when I make a comment inside a game (as the bot's opponent). I receive the command when I private-message

[computer-go] Chinese Computer Games Championship

2007-11-14 Thread Nick Wedd
I have now found what seems to be the results page of the Chinese Computer Games Championship, held in Chongqing in early October. It's at http://aigames.cn:8081/CCGCC/teamInfo.jsp It seems that Break won the 19x19 Go, and BitStronger won the 9x9. But there seem to be no scores listed, so

Re: [computer-go] Language

2007-11-14 Thread Christoph Birk
On Wed, 14 Nov 2007, Don Dailey wrote: Also, now that I think about it, I do use Mersenne Twister - I just forgot about it because this was a late addition to my program. I will look at the SIMD version - just using the non-SIMD version was a big speedup over the standard library rand()

Re: [computer-go] Language

2007-11-14 Thread Christoph Birk
On Wed, 14 Nov 2007, Hellwig Geisse wrote: The type of software I had in mind was an interactive system, running for days (or even months) without restarting, together with the possibility of creating function closures. I find it hard to imagine how you can do that without a garbage collector.

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread John Tromp
On Nov 14, 2007 2:00 PM, John Tromp [EMAIL PROTECTED] wrote: My solution doesn't make use of that, and satisfies the stronger property: 0 = a_i = 4 and sum a_i * n_i is in 1*nums union 2*nums union 3*nums union 4*nums = only one a_i is nonzero. that was not quite correct. it should say:

Re: [computer-go] Language

2007-11-14 Thread Don Dailey
I don't think of it as a library either, and technically it's not.I do compile those few lines of code and link them in separately. - Don Christoph Birk wrote: On Wed, 14 Nov 2007, Don Dailey wrote: Also, now that I think about it, I do use Mersenne Twister - I just forgot about it

Re: [computer-go] Language

2007-11-14 Thread Hellwig Geisse
On Wed, 2007-11-14 at 12:30 -0800, Christoph Birk wrote: I write (astronomical) instrument control software in C that runs for days (upto weeks). I call malloc() when I need memory and free() when the particular sub-task is done ... no problem. Then you are a lucky guy... ;-) With closures

Re: [computer-go] Language

2007-11-14 Thread Christoph Birk
On Wed, 14 Nov 2007, Hellwig Geisse wrote: On Wed, 2007-11-14 at 12:30 -0800, Christoph Birk wrote: I write (astronomical) instrument control software in C that runs for days (upto weeks). I call malloc() when I need memory and free() when the particular sub-task is done ... no problem. Then

[computer-go] Re: Language

2007-11-14 Thread Dave Dyer
It appears that the question of GC is not dependent on the problem (eg. computer-Go) but on the language you use. This really gets back to the core of the language question. The kind of language you choose depends in part on the kind of program you intend to write. If you're writing a monte

Re: [computer-go] Language

2007-11-14 Thread William Harold Newman
On Wed, Nov 14, 2007 at 10:40:15AM -0500, Álvaro Begué wrote: Anyway, go programmers should probably not be using a whole lot of dynamic memory allocation, and certainly not enough to make the performance of free() matter at all. Doesn't that depend strongly on how a program works? For

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Imran Hendley
On Nov 14, 2007 3:19 PM, John Tromp [EMAIL PROTECTED] wrote: On Nov 14, 2007 2:00 PM, John Tromp [EMAIL PROTECTED] wrote: My solution doesn't make use of that, and satisfies the stronger property: 0 = a_i = 4 and sum a_i * n_i is in 1*nums union 2*nums union 3*nums union 4*nums = only

Re: [computer-go] Language

2007-11-14 Thread Álvaro Begué
On Nov 14, 2007 4:58 PM, William Harold Newman [EMAIL PROTECTED] wrote: On Wed, Nov 14, 2007 at 10:40:15AM -0500, Álvaro Begué wrote: Anyway, go programmers should probably not be using a whole lot of dynamic memory allocation, and certainly not enough to make the performance of free()

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread John Tromp
On Nov 14, 2007 5:03 PM, Imran Hendley [EMAIL PROTECTED] wrote: On Nov 14, 2007 3:19 PM, John Tromp [EMAIL PROTECTED] wrote: On Nov 14, 2007 2:00 PM, John Tromp [EMAIL PROTECTED] wrote: My solution doesn't make use of that, and satisfies the stronger property: 0 = a_i = 4 and sum a_i

Re: [computer-go] Language

2007-11-14 Thread Nick Apperson
perhaps this is an obvious statement... The best language depends on the way in which your program works. Having used C++ extensively, my program designs naturally fit easily into that language. I'm sure a lisp programmer would think of better solutions that would only work in lisp. As far as

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Imran Hendley
For every string, you can keep track of this sum incrementally. When the string establishes a new adjacency to an empty point i, you add code[i] into the sum. OK that's what I thought before then I got really confused. And nums is just U_all_i code[i], right? if sum a_i = 4, and sum (a_i *

Re: [computer-go] Chinese Computer Games Championship

2007-11-14 Thread John Fan
The tables are the list of the programs, not the results. I read Ping Yu's blog. He is a professional go player. His program should have won both on 19x19 and 9x9. Here is the link of his blog, again it is in Chinese. http://blog.csdn.net/Yoenix/archive/2007/10/10/1817821.aspx According to his

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Eric Boesch
Sorry, I didn't mean to send that one yet. I pressed tab, meaning to print a tab character, and return soon after, which caused gmail to, first, change the focus to the send button, and second, send the mail. That last bit was supposed to be if (code_sum 5 * threshold) { int

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Eric Boesch
Encode each number by swapping base 2 with base 5, without changing the digits. So binary 11011 (27) is represented as base-5 11011 (756). This allows you to sum up to 4 such numbers without experiencing overflow from one digit to the next (since 4 1's adds up to just 4). Essentially, you are

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Jason House
Your post is very interesting. The tail part of it seems mangled. On Wed, 2007-11-14 at 20:37 -0500, Eric Boesch wrote: . Any coordinate is just a sequence of bits. Each bit can be encoded separately. So the problem reduces to how to encode a single bit (0 or 1) so that the sum of up to 4

Re: [computer-go] Language

2007-11-14 Thread William Harold Newman
On Wed, Nov 14, 2007 at 04:44:25PM -0600, Nick Apperson wrote: perhaps this is an obvious statement... The best language depends on the way in which your program works. Having used C++ extensively, my program designs naturally fit easily into that language. I'm sure a lisp programmer would

Re: [computer-go] Language

2007-11-14 Thread Nick Apperson
I definately agree with the spirit of what you are saying, and probably I am just missing something, but I'm not sure that the examples you gave are truly restricted in C++. You can import the setjmp header from C (or any number of other similar such libraries) and have crazy gotos. Every major

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Jason House
Nice work! I've convinced myself that what you're doing will work. If you sacrifice the two least significant bits for zero padding, you can avoid code_sum % pseudoliberty_count == 0 check. On Wed, 2007-11-14 at 21:02 -0500, Eric Boesch wrote: Sorry, I didn't mean to send that one yet. I

Re: [computer-go] Speed of generating random playouts

2007-11-14 Thread Chris Fant
Let elaborate a little more on this. We want one number for each cells : nums = {n1, n2, n3, ..., n81} And we want the following properties : for any a, b in nums : (a + b) / 2 is in nums -- a == b for any a, b, c in nums : (a + b + c) / 3 is in nums -- a ==