Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

Serial Communications - GPS Sings!

 [1/14] from: webmaster::windsweptfarm::com at: 19-Feb-2002 1:07


Dear List, Thanks for the pointer/s. I'm slugging it out little by little. I have now managed to pluck an individual NMEA sentence out of the NMEA stream and display it on the console. Sending the data somewhere else is trivial at this point. For those that care the code below opens the com2 port in the mode you see as "read only" "line by line" at 4800/8/n/1. The subsequent "Dave Harley" while loop checks for data pressence and executes a second while loop to validate that the sentences are Geographic Position sentences and if they are prints the actual data that trails after the "$GPGLL" identifier. code starts---> GPS_STREAM: open/read/lines serial://port2/4800/8/none/1 while [0 <> (length? (NMEA_LINE: first GPS_STREAM))] [if [(GEO_POS: find/match NMEA_LINE "$GPGLL,")] [(print GEO_POS)]] code ends -----^ My next wish is to pull the data out of the strings and do a "Z transform" on the lat/long positions. This is where we interleave the two numbers to wash out a bias when storing them in a linear medium such as computer memory. When they are stored (depending upon their density) they will follow a nested raster chaining pattern if we connected them together on the surface of the earth. Some of you helped withn the interleaving code for that about a year ago and I will thank you shortly. This data was generated by setting the garmin gps in simulation mode and setting the speed to 100mph. The initial position is where the machine had it's last position fix and the destination is Garmin's headquarters in Kansas. So the data points are a straight line vector from where I last ran the gps outdoors. 4339.015,N,07953.247,W,051936,A*30 4339.015,N,07953.247,W,051938,A*3E 4339.015,N,07953.247,W,051940,A*31 4339.015,N,07953.247,W,051942,A*33 4339.015,N,07953.247,W,051944,A*35 4339.015,N,07953.247,W,051946,A*37 4339.015,N,07953.247,W,051948,A*39 4339.015,N,07953.247,W,051950,A*30 4339.015,N,07953.247,W,051952,A*32 4339.015,N,07953.247,W,051954,A*34 4339.015,N,07953.247,W,051956,A*36 4339.015,N,07953.247,W,051958,A*38 4339.048,N,07953.247,W,052000,A*37 4339.096,N,07953.247,W,052002,A*36 4339.144,N,07953.247,W,052004,A*3E 4339.117,N,07953.323,W,052006,A*39 4339.103,N,07953.386,W,052008,A*3D 4339.088,N,07953.449,W,052010,A*32 4339.073,N,07953.513,W,052012,A*3A 4339.058,N,07953.576,W,052014,A*36 4339.043,N,07953.639,W,052016,A*36 4339.028,N,07953.702,W,052018,A*3C 4339.013,N,07953.766,W,052020,A*3D 4338.998,N,07953.829,W,052022,A*30 4338.983,N,07953.892,W,052024,A*3C 4338.968,N,07953.956,W,052026,A*32 4338.953,N,07954.019,W,052028,A*31 4338.938,N,07954.082,W,052030,A*37 4338.923,N,07954.145,W,052032,A*35 4338.908,N,07954.209,W,052034,A*31 4338.893,N,07954.272,W,052036,A*3C 4338.878,N,07954.335,W,052038,A*35 4338.863,N,07954.399,W,052040,A*36 4338.848,N,07954.462,W,052042,A*3E 4338.833,N,07954.525,W,052044,A*36 4338.818,N,07954.588,W,052046,A*3A 4338.803,N,07954.652,W,052048,A*3A 4338.788,N,07954.715,W,052050,A*3D 4338.773,N,07954.778,W,052052,A*30 4338.758,N,07954.841,W,052054,A*3A 4338.743,N,07954.905,W,052056,A*33 4338.728,N,07954.968,W,052058,A*3B 4338.713,N,07955.031,W,052100,A*3B 4338.698,N,07955.095,W,052102,A*35 4338.683,N,07955.158,W,052104,A*39 4338.668,N,07955.221,W,052106,A*33 4338.653,N,07955.284,W,052108,A*3A 4338.638,N,07955.348,W,052110,A*3F 4338.623,N,07955.411,W,052112,A*3C 4338.609,N,07955.474,W,052114,A*31 4338.594,N,07955.537,W,052116,A*32 4338.579,N,07955.601,W,052118,A*39 4338.564,N,07955.664,W,052120,A*3D 4338.549,N,07955.727,W,052122,A*36 4338.534,N,07955.791,W,052124,A*37 4338.519,N,07955.854,W,052126,A*3C 4338.504,N,07955.917,W,052128,A*38 4338.489,N,07955.980,W,052130,A*3B 4338.474,N,07956.044,W,052132,A*39 4338.459,N,07956.107,W,052134,A*36 4338.444,N,07956.170,W,052136,A*38 4338.429,N,07956.233,W,052138,A*39 4338.414,N,07956.297,W,052140,A*36 4338.399,N,07956.360,W,052142,A*3F 4338.384,N,07956.423,W,052144,A*35 4338.369,N,07956.486,W,052146,A*3B 4338.354,N,07956.550,W,052148,A*31 4338.339,N,07956.613,W,052150,A*37 4338.324,N,07956.676,W,052152,A*3A 4338.309,N,07956.739,W,052154,A*39 4338.294,N,07956.803,W,052156,A*38 4338.279,N,07956.866,W,052158,A*36 4338.264,N,07956.929,W,052200,A*3E 4338.249,N,07956.992,W,052202,A*33 4338.234,N,07957.056,W,052204,A*3F 4338.218,N,07957.119,W,052206,A*39 4338.203,N,07957.182,W,052208,A*3F 4338.188,N,07957.245,W,052210,A*3E 4338.173,N,07957.309,W,052212,A*31 4338.158,N,07957.372,W,052214,A*32 4338.144,N,07957.435,W,052216,A*39 4338.129,N,07957.498,W,052218,A*3B

 [2/14] from: gscottjones:mchsi at: 27-Feb-2002 7:56


Hi, Jim, ...
> My next wish is to pull the data out of the strings and do a "Z > transform" on the lat/long positions. This is where we interleave
<<quoted lines omitted: 3>>
> they will follow a nested raster chaining pattern if we connected them > together on the surface of the earth.
... (full message: http://www.escribe.com/internet/rebol/m19950.html ) Since I can't access the actual stream, I created a data block of NMEA statements as data. The code parses *all* statements, but then only further processes statements beginning with "$GPGLL". Then it creates a z-transform value and a new block that stores the parsed $GPGLL NMEA statement with the z-transform data tacked on the end. The last statements manipulate the block to demonstrate the data and a sort on the z-transform. Hopefully, the following hack is getting close to what you need. --Scott Jones GPGLL_Z_DATA: copy [] ;normally open stream here but use simulated stream instead ;GPS_STREAM: open/read/lines serial://port2/4800/8/none/1 ;simulated stream for illustration purposes GPS_STREAM: [ $GPGLL,4339.015,N,07953.247,W,051936,A*30 $GPGLL,4339.015,N,07953.247,W,051938,A*3E $GPGLL,4339.015,N,07953.247,W,051940,A*31 $GPGLL,4339.015,N,07953.247,W,051942,A*33 $GPGLL,4339.015,N,07953.247,W,051944,A*35 $GPGLL,4339.015,N,07953.247,W,051946,A*37 $GPGLL,4339.015,N,07953.247,W,051948,A*39 $GPGLL,4339.015,N,07953.247,W,051950,A*30 $GPGLL,4339.015,N,07953.247,W,051952,A*32 $GPGLL,4339.015,N,07953.247,W,051954,A*34 $GPGLL,4339.015,N,07953.247,W,051956,A*36 $GPGLL,4339.015,N,07953.247,W,051958,A*38 $GPGLL,4339.048,N,07953.247,W,052000,A*37 $GPGLL,4339.096,N,07953.247,W,052002,A*36 $GPGLL,4339.144,N,07953.247,W,052004,A*3E $GPGLL,4339.117,N,07953.323,W,052006,A*39 $GPGLL,4339.103,N,07953.386,W,052008,A*3D $GPGLL,4339.088,N,07953.449,W,052010,A*32 $GPGLL,4339.073,N,07953.513,W,052012,A*3A $GPGLL,4339.058,N,07953.576,W,052014,A*36 $GPGLL,4339.043,N,07953.639,W,052016,A*36 $GPGLL,4339.028,N,07953.702,W,052018,A*3C $GPGLL,4339.013,N,07953.766,W,052020,A*3D $GPGLL,4338.998,N,07953.829,W,052022,A*30 $GPGLL,4338.983,N,07953.892,W,052024,A*3C $GPGLL,4338.968,N,07953.956,W,052026,A*32 $GPGLL,4338.953,N,07954.019,W,052028,A*31 $GPGLL,4338.938,N,07954.082,W,052030,A*37 $GPGLL,4338.923,N,07954.145,W,052032,A*35 $GPGLL,4338.908,N,07954.209,W,052034,A*31 $GPGLL,4338.893,N,07954.272,W,052036,A*3C $GPGLL,4338.878,N,07954.335,W,052038,A*35 $GPGLL,4338.863,N,07954.399,W,052040,A*36 $GPGLL,4338.848,N,07954.462,W,052042,A*3E $GPGLL,4338.833,N,07954.525,W,052044,A*36 $GPGLL,4338.818,N,07954.588,W,052046,A*3A $GPGLL,4338.803,N,07954.652,W,052048,A*3A $GPGLL,4338.788,N,07954.715,W,052050,A*3D $GPGLL,4338.773,N,07954.778,W,052052,A*30 $GPGLL,4338.758,N,07954.841,W,052054,A*3A $GPGLL,4338.743,N,07954.905,W,052056,A*33 $GPGLL,4338.728,N,07954.968,W,052058,A*3B $GPGLL,4338.713,N,07955.031,W,052100,A*3B $GPGLL,4338.698,N,07955.095,W,052102,A*35 $GPGLL,4338.683,N,07955.158,W,052104,A*39 $GPGLL,4338.668,N,07955.221,W,052106,A*33 $GPGLL,4338.653,N,07955.284,W,052108,A*3A $GPGLL,4338.638,N,07955.348,W,052110,A*3F $GPGLL,4338.623,N,07955.411,W,052112,A*3C $GPGLL,4338.609,N,07955.474,W,052114,A*31 $GPGLL,4338.594,N,07955.537,W,052116,A*32 $GPGLL,4338.579,N,07955.601,W,052118,A*39 $GPGLL,4338.564,N,07955.664,W,052120,A*3D $GPGLL,4338.549,N,07955.727,W,052122,A*36 $GPGLL,4338.534,N,07955.791,W,052124,A*37 $GPGLL,4338.519,N,07955.854,W,052126,A*3C $GPGLL,4338.504,N,07955.917,W,052128,A*38 $GPGLL,4338.489,N,07955.980,W,052130,A*3B $GPGLL,4338.474,N,07956.044,W,052132,A*39 $GPGLL,4338.459,N,07956.107,W,052134,A*36 $GPGLL,4338.444,N,07956.170,W,052136,A*38 $GPGLL,4338.429,N,07956.233,W,052138,A*39 $GPGLL,4338.414,N,07956.297,W,052140,A*36 $GPGLL,4338.399,N,07956.360,W,052142,A*3F $GPGLL,4338.384,N,07956.423,W,052144,A*35 $GPGLL,4338.369,N,07956.486,W,052146,A*3B $GPGLL,4338.354,N,07956.550,W,052148,A*31 $GPGLL,4338.339,N,07956.613,W,052150,A*37 $GPGLL,4338.324,N,07956.676,W,052152,A*3A $GPGLL,4338.309,N,07956.739,W,052154,A*39 $GPGLL,4338.294,N,07956.803,W,052156,A*38 $GPGLL,4338.279,N,07956.866,W,052158,A*36 $GPGLL,4338.264,N,07956.929,W,052200,A*3E $GPGLL,4338.249,N,07956.992,W,052202,A*33 $GPGLL,4338.234,N,07957.056,W,052204,A*3F $GPGLL,4338.218,N,07957.119,W,052206,A*39 $GPGLL,4338.203,N,07957.182,W,052208,A*3F $GPGLL,4338.188,N,07957.245,W,052210,A*3E $GPGLL,4338.173,N,07957.309,W,052212,A*31 $GPGLL,4338.158,N,07957.372,W,052214,A*32 $GPGLL,4338.144,N,07957.435,W,052216,A*39 $GPGLL,4338.129,N,07957.498,W,052218,A*3B ] ;process stream ;use following to iterate over simulated stream foreach NMEA_LINE GPS_STREAM [ NMEA_LINE_BLOCK: parse/all NMEA_LINE "," if NMEA_LINE_BLOCK/1 = "$GPGLL" [ lat: join "0" [head remove find copy NMEA_LINE_BLOCK/2 "." "0"] lon: join head remove find copy NMEA_LINE_BLOCK/4 "." "0" z-trans: join copy/part lat 3 [ copy/part lon 3 copy/part skip lat 3 2 copy/part skip lon 3 2 copy/part skip lat 5 2 copy/part skip lon 5 2 copy/part skip lat 7 2 copy/part skip lon 7 2 ] ;print z-trans append NMEA_LINE_BLOCK z-trans append/only GPGLL_Z_DATA next NMEA_LINE_BLOCK ] ] ;show new data block contents - not sorted foreach k GPGLL_Z_DATA [print k] ;sort data based on z-transform i: copy sort/compare GPGLL_Z_DATA 7 ;show new data block contents - sorted by z-transform value foreach k i [print k]

 [3/14] from: steve:shireman:semaxwireless at: 13-Mar-2002 17:15


I am curious who you are, I meant to try to contact you earlier when I saw this thread, but wasn't sure, is your name Jim? Is this a Garmin GPS-35 or ? I happen to reside in Kansas City, MO, across the state line from Garmin. We have integrated the Garmin GPS into our product line, as well as some others... I have a potential project brewing, and thought, if you are here in the Heart of America, well...maybe we could work something out. Anyway, feel free to contact me: Steve Shireman [ankle1--mindspring--com] or [steve--shireman--semaxwireless--com] and we can discuss a few things. I have written a GPSbot earlier in /IOS (well, runs in View, but easier to keep track of in /IOS) which uses the GPS-35 unit data [webmaster--windsweptfarm--com] wrote:

 [4/14] from: webmaster:windsweptfarm at: 5-Mar-2002 23:06


Dear Steve, Yes it's Jim. I am in Canada, just west of Toronto. Somewhere near N43 39.015 W79 53.247 according to My Garmin Not exactly your neighbourhood, but close enough in global terms. I have a Garmin II+ by the way. Super reliable machine even after it drops off your car roof at 60mph. I basically have this interest in putting this technology to some higher use beyond the single user concept that an un-networked gps traps us in. Essentially, I would like to see the evolution of a "resource discovery" mechanism tied to location. In real terms I would expect people to take their antiquated phone directories and maps to the recycling depot and forget they existed. In their place we would have a location aware system that could be interrogated for specific resources based upon user input. The emphasis is on the individual controlling his "view" based upon his needs and or preferences. Imagine that we have thematic data layers that have a geographic location component. Without limiting my description you could have all manner of things whether they are stores, restaurants, gas stations, recreation areas, etc. Beyond that you would have other elements that have a limited temporal existence. These could be seasonal sports venues, parks, garage sales, virtual car lots, auctions, specific movies and theatrical presentations, etc. You get the idea? "Data" would have a lifespan and a geographical sphere of influence. In this context data would become invisible beyond the temporal as well as geographic extent of these elements. The data would be distributed based upon geography. Servers would have an index of active themes so that they could resolve requests with a nul response or the results of a search. So we would have these imaginary users either stationary or mobile creating these geographic "clouds" around themselves that contain their needs and or requests. A fixed location user may have an interst in antique cars and anti-globalization rallies within 100 miles of his defined location (home perhaps). So he creates his cloud and populates it with his preferences and fowards it to the server which then decides that this is a low frequency request and processes it accordingly. On the other hand we have Billy Bob who knows that Valentines Day is coming and his wife who is a large lady likes bon bons and lingerie. So Billy Bob turns on his gps enabled wireles PDA and builds his cloud and makes it active for the period while he is driving home. The server sees that Billy Bob is moving and processes his request based upon his ground speed and direction in real time to build a reciprocal response that lists confectioners and lingerie stores for big girls along his path. Naturally there are many ways to organize the data. I was leaning towards the concept of interleaving the longitude and lattitude and storing the elements in that order. The data would have a nested raster layout that could be examined by traversing the data along the boundries of the cells formed by lat/long pairs at various resolutions. Where no date exists there is no expense in storage as well as the data being self organizing. I am familiar with other methods of structuring the data, including Voronoi indexes and whatnot but this seems to be a quick and dirty solution, not to mention the fact that "Terra Server" uses this method. Well that is a crude and general view of what interests me and why I am hovering around Rebol as a solution. On a phylisophical level I would like to see a more rational use of the resources that exit in the "wild" and encourage the public at large to drive less to find what it is that they really need. Searching for things on a scale of 1:1 with a car in traffic is not my idea of a progressive future. By giving people a birds eye view of the world with 20:20 vision would in my estimation turn the whole concept of premium road front property on its' ear and with luck make billboards and vulgar displays of road signage obsolete. I keep wishing... Sincerely, Jim

 [5/14] from: tbrownell:shaw:ca at: 13-Mar-2002 23:42


Interesting. I've done a bit of development in this area as well. Three things in particular... 1.) Giving everything, and everywhere, an =LFReD Name=, LFReD Names are advanced namespaces that have associated data. This data can then be easily retrieved using natural language processing... for example, N43 39.015 W79 53.247 could be associated with the LFReD Name =Joe= So a question such as Where is =Joe would pop up the actual location on a map. (For more info on =LFReD Names= check out www.LFReD.com) 2.) Created a very accurate html based plotting/mapping server using Rebol (Now THAT is going back a couple of years) 3.) Created a system that turns long/lat coordinates into a 7 digit number for ease of memory... although this has been re-worked into the =LFReD Names= system. TBrownell

 [6/14] from: joel:neely:fedex at: 14-Mar-2002 8:25


Hi, Terry, As I reported previously on this list, your site at http://www.LFReD.com/ seems to have a problem (I'm using Netscape Communicator 4.73, which is reasonably common and up-to-date). A chunk of the grey and blue border is sitting in the middle of the screen (roughly level with the large words The LFReD and to the right of that is a large rectangle containing only a broken-image icon and the words You can't see the floating frame so, whatever is in that "floating frame" is inaccessible to me (and, presumably, anyone else using a similar browser). -jn- Terry Brownell wrote:
> 1.) Giving everything, and everywhere, an =LFReD Name=,.. > (For more info on =LFReD Names= check out www.LFReD.com) >
-- ; sub REBOL {}; sub head ($) {@_[0]} REBOL [] # despam: func [e] [replace replace/all e ":" "." "#" "@"] ; sub despam {my ($e) = @_; $e =~ tr/:#/.@/; return "\n$e"} print head reverse despam "moc:xedef#yleen:leoj" ;

 [7/14] from: tbrownell:shaw:ca at: 13-Mar-2002 23:49


My GPS software pegs you about 6 miles off the coast of Oakville in Lake Ontario? Do you live on a boat ;) TB

 [8/14] from: steve:shireman:semaxwireless at: 14-Mar-2002 14:01


Cool, I don't know what happened to Jim's original message. My email client seems like it drops messages, but it isn't written in Rebol. (using Netscape at the moment) Will check out LFReD, didn't realize you had a GPS thing going, but there is so much development going on in Rebol, who can keep up with it all? I have been to Toronto a dozen times in the last few years, mostly for Bell Mobility/Bell Canada wireless design projects. But the particular AVL application which my door is being beat on for now is in another continent south of here. (you get the Sxx longitude values down there, and you wouldn't believe how difficult it is for me to tell east from west down there, so sometime I stand on my head to figure it out ;-) Trying to see if at the moment I have time to do it, but it is big enough I have to consider it. Anyway, I have put in some bids, the biting process is going on, and who knows if it will materialize, but it didn't go away the first time... Feel free to email me your contact information if you want me to contact you about it. Wish I could find the original email but it is buried somewhere in the ml...I am so spoiled by IOS/Conference to find my communications. Will read your emails more offline. Thanks, Steve Shireman Terry Brownell wrote:

 [9/14] from: tbrownell:shaw:ca at: 14-Mar-2002 12:48


Oops, did I say Netscape Communicator 4.73 was 11% of the market? My mistake. Browser Statistics Browser Version Jan 01 Apr 01 Jul 01 Oct 01 Jan 02 Internet Explorer 6.x 9% 23% Internet Explorer 5.x 72% 79% 81% 71% 64% Internet Explorer 4.x 12% 8% 7% 5% 4% Netscape 4.x 10% 7% 5% 5% 4% Other Netscape compatible 1% 3% 4% 5% 1% TB

 [10/14] from: tbrownell:shaw:ca at: 14-Mar-2002 12:39


Joel, Looks like Netscape 6 supports floating frames. Maybe time to upgrade your reasonably common and up-to-date 4.73 browser? Also in response to your "not to be picky" response re: Windows Uptime API... it has the words "Windows" in the subject... and considering 96%+ of all OSs being used are windows flavours, then if the platform isn't mentioned, windows should be used by default and everything else should have a "REBOL/Command >>on Unix<<" type statement. TB (4.73 is common, if you consider < 12 % of the status quo as being common.)

 [11/14] from: ingo:2b1 at: 15-Mar-2002 10:20


Hi Terry, of course you are completely right ... Am Don, 2002-03-14 um 21.39 schrieb Terry Brownell:
> Joel, > Looks like Netscape 6 supports floating frames. Maybe time to upgrade your
<<quoted lines omitted: 6>>
> TB > (4.73 is common, if you consider < 12 % of the status quo as being common.)
... so why bother with anything but windows, anyway? And while we're at it, let's switch the list to chinese, the language spoken by most people ... thinking about it, most people can't even read, so maybe we should drop this silly email thingy altogether. Kind regards, Ingo

 [12/14] from: joel:neely:fedex at: 15-Mar-2002 8:25


My goodness, Terry, Such a wealth of opportunity, I hardly know where to begin, so I'll simply address my own assumptions (grouped by topic). Terry Brownell wrote:
> Looks like Netscape 6 supports floating frames. Maybe time to > upgrade your reasonably common and up-to-date 4.73 browser? >
I had assumed that someone who felt he has something important or worthwhile to say would want to make it accessible to the widest possible audience, instead of having barriers to entry affecting parts of the audience. I had assumed (based on my own experience) that it isn't hard to create HTML that is browser-neutral.
> (4.73 is common, if you consider < 12 % of the status quo as > being common.) >
Without debating the statistic, or the phrasing within which it is presented... If one out of every eight people who ate at a particular restaurant contracted food poisoning, then I assume it is reasonable to report as "being common" that their patrons become sick.
> Also in response to your "not to be picky" response re: > Windows Uptime API... it has the words "Windows" in the > subject... and considering 96%+ of all OSs being used are > windows flavours, then if the platform isn't mentioned, > windows should be used by default and everything else > should have a "REBOL/Command >>on Unix<<" type statement. >
Without debating the statistic... I had assumed that someone who was actively working with a language that is presented and defended by its creator(s) as platform neutral would at least respect (if not actively support) that goal, especially in the context of a mailing list devoted to that language. Thank you for clearly and effectively demonstrating how unrealistic my assumptions were. -jn- -- ; sub REBOL {}; sub head ($) {@_[0]} REBOL [] # despam: func [e] [replace replace/all e ":" "." "#" "@"] ; sub despam {my ($e) = @_; $e =~ tr/:#/.@/; return "\n$e"} print head reverse despam "moc:xedef#yleen:leoj" ;

 [13/14] from: tbrownell:shaw:ca at: 15-Mar-2002 8:49


Chinese internet usage accounts for 9.2 % which is increasing each year, unlike Netscape 4.x which has gone from 10% to 4% in one year. So the conclusion; don't waste time on dying technologies like Netscape, but rather spend that time developing Chinese interfaces, which is why our language products are learning Pinying (if only we could just figure out those little intonation symbols ;)... TB

 [14/14] from: tbrownell:shaw:ca at: 15-Mar-2002 10:51


Goodness gracious, Joel,
> I had assumed that someone who felt he has something important > or worthwhile to say would want to make it accessible to the > widest possible audience, instead of having barriers to entry > affecting parts of the audience.
The figures speak for themselves, Netscape is dead, or at least dying. But how can that be, they were THE browser at one point? One reason would be surfing a site, like mine, and discovering that Netscape doesn't work there. Should we not put Flash, forms, tables etc on our sites to keep the Mosaic 1.0 users happy? At what point do you draw the line between wider and widest? I can only imagine that folks use Netscape for it's openness. And they sourced it because people were leaving in droves for IE, and as a last ditch effort to have some (even 4%) of the market share. I don't care what browser I use, as long as everyone is using the same. In this case IE wins. Do I care? Nope.. like 95% of the population, couldn't care less. If it can't cross platform, then dump it for an alternative. View/Pro and Rebol/Command scripts are cross platform, but not when it comes to API calls, which was the discussion at hand. I haven't seen any Unix flavoured API type calls posted? Are the open sourcers out there suffering from windows envy? (Ooh, low blow :) Frankly, I wish some new OS/Hardware scheme would come onto the market with a batch of "killer apps" that would make everything to date look sick, and would force any sane person to adopt it immediately. But of course, we wouldn't because you'd still have someone using DOS, and well, we would'nt want to gimp our "widest possible audience" would we? I read an article on slashdot that showed folks leaving Linux for the new Mac OS. Great, just great.
> Thank you for clearly and effectively demonstrating how > unrealistic my assumptions were.
Anytime. TB

Notes
  • Quoted lines have been omitted from some messages.
    View the message alone to see the lines that have been omitted