Dear Unicon users,
Few months ago I posted the link to one my AI program.
http://chem.pmf.hr/~kazimir/Finder.html
That program was my main reason to migrate from C++ on Icon and later Unicon. The program was tested extensively and worked for total of nearly 100 days without substantial problems. Some of the experiences will be, hopefully, published in the next issues of The Generator.
In further versions of the program, dynamic data structures, i.e. graphs have to be used more extensively. However, some concerns were raised a year ago, when the program that behaves less than satisfactory was posted here. C. Jeffery announced the fix, but one which was reported work properly only on Unix.
These days issue becomes critical for me. I'm sending similar program for a test again. The program constructs dynamic structures resembling "real ones" closely. I need help of someone who is willing to execute it on some Linux Unicon (until it crashes or start "thrashing") and send the program output publicly or privately. Also, if someone uses other Windows or Linux programming tools (Jcon, Python, Lisp, Ruby, Wrapl, anything) regularly, and is willing to translate and test the program and send information, it will help me to make informed decision.
Sincerely, Kazimir Majorinc
Appendix 1: the program ################################################################## $define RANDOM ? $define CARDINAL *
procedure main()
writes("Do you want to test (1) lists or (2) sets? ") if read()=1
then {CONTAINER:=list; INSERT:=put}
else {CONTAINER:=set; INSERT:=insert} t:=&time
nodes := CONTAINER()
edges:=0
write("Nodes, edges, seconds.") repeat
{ new_node:=CONTAINER()
every 1 to 2*sqrt(CARDINAL(nodes)) do
{ old_node:=RANDOM( nodes )
INSERT(new_node, old_node)
INSERT(old_node, new_node)
edges+:=1
}
INSERT(nodes, new_node)
if CARDINAL( nodes ) % 500 =0 then
write( CARDINAL( nodes), ", ", edges, ", ", (&time-t)/1000. )
}end ##################################################################### Appendix 2: program output on Windows XP, 256 MB, 2.4 GHz P4.
C:\Unicon>crash Do you want to test (1) lists or (2) sets? 1 Nodes, edges, seconds. 500, 14641, 0.015 1000, 41640, 0.046 1500, 76682, 0.109 2000, 118225, 0.203 2500, 165375, 0.281 3000, 217550, 0.359 3500, 274291, 0.453 4000, 335265, 0.5620000000000001
[K.M.'s note: the program now crashes silently.]
C:\Unicon>crash Do you want to test (1) lists or (2) sets? 2 Nodes, edges, seconds. 500, 14641, 0.047 1000, 41640, 0.297 1500, 76682, 0.797 2000, 118225, 1.515 2500, 165375, 2.718 3000, 217550, 4.578
Run-time error 307 File crash.icn; Line 23 inadequate space in block region Traceback: main() insert(set_1993(147),set_3440(16)) from line 23 in crash.icn
################################################# Appendix 3; Program output on Windows XP, 512 MB, 2.8 GHz P4
C:\downloads>crash Do you want to test (1) lists or (2) sets? 1 Nodes, edges, seconds. 500, 14641, 0.015 1000, 41640, 0.046 1500, 76682, 0.078 2000, 118225, 0.14 2500, 165375, 0.187 3000, 217550, 0.25 3500, 274291, 0.406 4000, 335265, 0.468 4500, 400191, 0.5620000000000001 5000, 468854, 0.64 5500, 541051, 0.734 6000, 616616, 0.843 6500, 695419, 0.953
[K.M.'s note: the program now crashes silently.]
C:\downloads>crash Do you want to test (1) lists or (2) sets? 2 Nodes, edges, seconds. 500, 14641, 0.047 1000, 41640, 0.219 1500, 76682, 0.61 2000, 118225, 1.188 2500, 165375, 2.11 3000, 217550, 3.125 3500, 274291, 4.516 4000, 335265, 6.344 4500, 400191, 9.141 5000, 468854, 12.141 5500, 541051, 15.891 6000, 616616, 20.156 6500, 695419, 25.39 7000, 777322, 32.484 7500, 862210, 41.421
[K.M.'s note: the program now crashes silently.]
------------------------------------------------------- This SF.Net email is sponsored by: InterSystems CACHE FREE OODBMS DOWNLOAD - A multidimensional database that combines robust object and relational technologies, making it a perfect match for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8 _______________________________________________ Unicon-group mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/unicon-group
