syntex. " [sic] At least I got it right in the subject:-)
Actually, you missed my point.
If for some reason I hit the tab on the "y" part, I would not know it was a mistake until I really analyze the code. It is not as easy to make a mistake with adding the "}" in the wrong place. Yes it can be done, but not as easily. It is easier to make indentation mistakes in Python, and that will be harder to spot it, especially if you have long code segments and get messed up in the nesting structure. Maybe you could add begin and end comment statements to help in this, but that is an overhead that few, if any, programmers will do.
My preferred scripting language is Perl, and a coworker of mine prefers Python. We both make fun of each other and have debates on the issue all the time. But this one point, he actually agrees with me.
There are those that like the Python way, and there are those that like the Perl way. This is a Holy war and will never end. So, I too believe that Python will be around in 20 years (although it may change) but I also believe that Perl will be around in 20 years. This is the case because it is a Holy war, and as we can learn from the Mid East, they can last a long time.
What's wrong with the legibility answer? I think that's an *excellent* reason! Don't care if your code is legible?
In other words: "NO, I don't have another answer".
Sorry, but I also don't care for the indentation for the exact reason that he gives.
if (x == 4)
x = 10;
y = 6;
Now how did I know that the writers intent was
if (x == 4) { x = 10; }
y = 6;
or
if (x == 4) {
x = 10; y = 6;
}
the if without braces should also be avoided in C but I do fall for that too.
Now if you use the braces, you know what the programmers intent was. But with Python, you don't. It could have been an indentation mistake, and that is harder to debug.
So if they ment
if (x == 4) { x = 10;}
y = 6;
How will you know with just an indentation syntex.
I used Python for about a month, and gave up and went back to Perl for scripting. This is probably because of my long C experience.
I believe in the More than one way of doing it. That's also probably why I hate MS Windows!
Although Wine has improved a lot, I must recommend Win4Lin. For $30 I bought version 2 and it runs all the apps (Quicken and Turbo Tax, MS Office) I need on Windows without ever rebooting. Although it is not great for gaming, but I don't do too much of that, and when I do, I try to pick the games that run on Linux (Quake and UT).
But Win4Lin is great, it lets you do things on Windows without rebooting, it doesn't cost the same as VMWare nor is it a hog as VMWare is. I run things smoothly on 94M RAM, (it seems as though my windows apps run faster in Win4Lin then they do natively, but how can that be?)
Win4Lin is NOT a true virtual machine. I call it a semi-VM. It will NOT run NT or 2000. It is only for the 9x series. So it is not for everyone. It also has problems with MS SMB, but TCP works fine. If you want a product that you can do windows work (Office, Quicken, and the Like) without rebooting from Linux, I strongly recommend it. It helped me out a lot at work, since I do my developing in Linux and all my coworkers keep sending me power point and word documents.
I think this is very usefull. Especially when I'm in a meeting, and I bring a laptop to quickly type up notes. Although I would not use this for the text recognition, but for the drawing diagrams. We usually have a white board to write on and show diagrams of the design, and I don't have time to enter it in some graphics utility. So being able to just draw it with a pen would be a great help.
Same thing goes for business trips. I write ideas for software products into a laptop, but there are times when I want to draw pictures to help explain the idea. Again, I don't want a graphics tool, but to just draw something would be of great help.
How far do you take it though, surely you wouldn't include the "what is this openlinuxbsdnix" question.
Ok, the "what is Open Linux bsdnix" thing would go into the "funny" catergory, and has nothing to do with Linux security. But the following...
I can't telnet to my machine as root!
Process belonging to `nobody', have I been cracked?
`-- MARK --' in my logs, what's going on?
Should I DENY or REJECT in my ipchains rules?
questions, are more legit, and have been commonly asked by newbies. The number of times I get someone calling me up and asking me why they can't log in as root is amazing. I would also add that not ever loging in as root (except for system admin stuff) should be stated in the FAQ.
These are "Frequently Asked Questions" about Linux security and you would expect that the FAQ would answer these. Yes there are good questions answered in the FAQ but you also want to answer the stupid ones too, so you are not answering them in the news group.
I got from the previous poster's comment, not that MS doesn't have Itanium boxes to test on, but that Linux would have been tested in real world cases by those that have taken the risk of implementing some system with new Linux/Itanium boxes.
Real testing comes with real use, not in labs.
Although MS could do real testing if they move something like HotMail onto Itanium machines. But I would doubt they would do such a thing before a release.
The difference comes from being open or being closed. I always liked the idea of COM and.NET, but I don't like what MS does with it. Meaning their common tactic of embrace and expand. People get suckered in and they change the system so that you are stuck with MS and don't have any other choice. But if it is in an open environement, where all development is viewable, and source code available, and such, it can grow and be use with no worry about being locked into one system.
I'm sure we will soon see GNOME using the same technology if this catches on.
MS keeps saying that they will become compatible with others, but their record is poor in this respect. If they port something, it is usually of lesser quality.
I don't consider myself a hypocrite, unless this ends up as some proprietary protocol and I'm still supporting it.
I'm not saying everything must be open source, but I do believe all protocols must be. When COM and.NET is full compatible with Linux, then I may change my mind about Microsoft.
When it comes to security, it pays to be a real prick. Sorry, but it's true. In a small company, you might be able to get away with being a little lenient. But when it comes to multi-million dollar industries, or real life safety, you have to be a hard ass. A co-worker of mine, one day walked through an airport metal detector and it went off. Instead of simply going back through the detector and removing any more metal, he jokenly said "damn, must be my gun". Needless to say, he missed his flight. He spent the night with security. Moral of the story... don't mess with security, they have no sense of humor.
I keep hearing that Netscape lost the browser war. But the majority of people here where I live Still use Netscape, and think that Netscape won. But then again, I live in New York, the state that had the highest percentage for Gore, and we think he also won.
But seriously, my company, Lockheed Martin, which is fairly large and is basically dominated by Microsoft (we try to partner with them at every chance we get), but Netscape is still the officially supported browser. In fact, all our internal web pages are tested for Netscape and little testing is done for IE.
Being a Linux type of guy, I'm sticking with Netscape. I don't have the time to install Mozilla. I did a while ago, but that was when it crashed more then 4.7. I've tried a few other browsers (Konquerer and Opera) but they vary from Netscapes interface, which I've grown accustom to. Altough when Netscape changed to the new interface, it took a little to get use to it, and now that I have, I'm not inclined to change very much.
I'm not trying to say that Netscape's UI is any better than any other Browser. In fact, I'm sure most of you can bring up valid points to why it is not better. But I'm use to it, and I'm sure there are others that are too, and don't care to change. When Netscape 6 slims down to run on my P75 45Meg RAM Laptop, then I might switch to that.
Let me rephrase that. A TM can simulate any computer program that can be written for todays computers. TM can simulate more than mere algorithms, since an algorithm is something that terminates on all inputs. TM's may not terminate, and may run forever, but that would be useless.
Any program you think of will eventually be converted into machine language, that has op codes, registers, and memory. It's not very hard to write a TM to simulate the op-codes of a CPU, and include cache (as a tape) as well as registers, and memory.(It may be tedious, but not hard). Then any program that is compiled to that CPU can be simulated by that TM.
If you replace your video card and monitor with a tape, you get the same thing as a TM. If you made a video card that could read a tape of a TM (hypothetically of course) then you could actually run Quake 3. So if your computer took in a TM input, then you can still run any program you can today.
I hate to slash dot my school, but I'm in a Masters class right now that uses the above mentioned TM simulator It works pretty well, but is very picky on format. Here's an example input file (from one of my assignments) that explains how it works:
file assign3.atm:
ATM
{w (a+b+c)* : na(w) = nb(w) = nc(w) > 0 }
a b c// input tape alphabet
a b c d B// tape alphabet
4// number of tapes
1// num. of tracks on tape 0
1// num. of tracks on tape 1
1// num. of tracks on tape 2
1// num. of tracks on tape 3
1// tape 0 is 1-way infinite
1// tape 1 is 1-way infinite
1// tape 2 is 1-way infinite
1// tape 3 is 1-way infinite
q0// initial state
q3// final state
q0 a+B+B+B q1 a+d+d+d s+r+r+r
q0 b+B+B+B q1 b+d+d+d s+r+r+r
q0 c+B+B+B q1 c+d+d+d s+r+r+r
q1 a+B+B+B q1 a+a+B+B r+r+s+s
q1 b+B+B+B q1 b+B+b+B r+s+r+s
q1 c+B+B+B q1 c+B+B+c r+s+s+r
q1 B+B+B+B q2 B+B+B+B s+l+l+l
q2 B+a+b+c q2 B+a+b+c s+l+l+l
q2 B+d+d+d q3 B+d+d+d s+r+r+r
end
This simply checks to see if a string contains the same number of a's b's and c's.
The file starts after the "file" line.
ATM is needed.
comment is next.
The input tape alphabet
The tape alphabet
The number of tapes.
For each tape, list the number of tracks.
For each tape, is it infinite one way or two ways
The starting state.
The final state
All the state transactions:
of the format: state
followed by the expected input on the tapes (each tape separated by a +)
Then the next state to go to
Then what to write on the tapes
Then the directions to move "s=stationary, r=right, l=left"
The file must end with the word "end"
Turing machines have no memory, they use the tape as a memory. So the tape is the memory. Although I'm sure someone has made one that does have some extra memory, a stack or something.
You mean like Push Down Automata. It has been proven that a Turing Machine can simulate a PDA. But that's not saying much, since a TM can simulate any computer program of today, and since in theory a TM has an infinite amount of tape, it is even more powerful than any computer of today.
I'm currently in a class for my masters in Automata and Formal languages and such, which includes all the fun thoeries of TM and such. What I find most impressive, is that a TM was invented way before computers, and it has basically the same functionallity.
There is no Linux market for desktop applications.
I must disagree. No is such a strong word. If you had said "little" I would agree, but not "no". There is a good market for desktop applications on Linux, it just is not a main stream market. I can't stand using Windows. I feel so constrained, that anything I want to do, I need to go out and buy a package, or down load some closed source utility I have no idea how it works.
But there are many like me that prefer to work in Linux/FreeBSD/Unix, and we do need desktop applications that we can use to communicate with the rest of the world. Unfortunately, right now the main document "protocol" is proprietary. I'm hoping that something like XML can be used to change the format of documents that are passed to and from individuals.
But don't say that there is NO market. I have bought/paid for desktop applications for Linux (Corel WP and Star Office: before it was bought by Sun). I prefer to work with LaTeX, but most people I need to send documents to, don't know any other format but ".doc". I know I have a need for desktop applications, so if it is only me, I am still a market. Just a very small one!
Come now, I don't even think that Nick really believes that there is Linux code in Windows. But I think he loves the attention when he pushes the rumor.
Now I will say that Win4Lin has been a life saver at work for me. I'm "forced" to use Word as my "official" document word processor. But I use Linux for development and code. I deliver code to Sun, AIX and Linux platforms and Linux seems to be the easiest to port to and from. As well I enjoy working straight from my own PC then to telnet to a server that I don't control.
Ever since I found Win4Lin, my rebooting days were over. It is fast and doesn't bog down my 94 meg 300MHz Pentium II. It is not as robust as VMware, but it doesn't take up the resources, and can use the same filesystem as Linux. So for just needing to use Windows apps, I strongly recommend it.
And it was really funny when I received the BSOD, which I had to do a screen save to send to friends, and all I had to do was restart Win4Lin and I never lost any of my development work.
congradulations, cockgobbler, you've just described a drill-down query.
You have such a beautiful way with the english language. The algorithms may not be new, but the implementation is.
I never said that SQL was hard, it's quite trivial. Yes there are standard ways to look things up without actually writing SQL. I said it was just time consuming, and you need to be specific. The idea of using a 3D database is the fact that you can use what humans have the best concept of. And that is visualization. Going to general parts of a database and quickly scan the data to find what you are looking for. Not unlike flipping through a book to find some topic, that you don't remeber the exact text.
So before I get to read more of your lovely words, my point is not that 3D databases are going to bring new techniques of searching data (which they will) but that it will allow humans to use more of their senses to get the job accomplished instead of just thinking up queries and have what you have: tunnel vision
The warehouse metaphor was a simple example, and I didn't explain it very well. I work with lots of large databases, and writing a bunch of SQL reports takes time. Especially if you want quick general information. A virtual Warehouse would be useless if it tried to simulate an actual warehouse. You need to think about dynamic rooms that use something like hypertext links. You go to a certain information, and you need to see all the related data for it. So you create a dynamic "room" that contains all the related data. You look forward, you see the main topic, around it you see the related information. You now see something in the room you want to focus on, you point and "click" on the new topic, and create a new room that contains the data related to the new topic.
Even if you don't like these examples, you need to think more about the possibilities instead of complaining about a new technology. Yes I wouldn't want to replace my emacs environment with a 3D one, unless I find a real use for it. I strongly believe that there are many benefits from using a 3D space for some applications and databases. Now if you have a trivial database, then no, just keep it the way it is. But if you have a more complex one, it might be better to look ahead and see what you can do.
You have a good way of putting down an idea, but I did not notice any improvements or a better one. I like criticism, but lets make it constructive please.
3D can benefit the searching and orginization of data, more than viewing of it, unless you want to see trends.
This is the main reason I like a paper book more than one on the screen. If I know something is somewhare in the middle of a book, I find it is easier to flip to it than to use a scroll bar. Or if I know the approximate location of a picture, I find it easier to flip the pages and find it, then to scroll down a document and find it. Yes, books don't have that automatic search for text, but it is more of a pain if you don't know of the exact text you are looking for.
Now imagine a three dimensional database. Where you can point to (using something like a laser pointer) and be brought to exactly the location you are looking for. By knowing where certain types of data is located, you can brouse the area useing more of your peripheral vision then a small screen.
I mentioned the pointer since you mentioned that you can't tell when you actually touched something. A 3D interface that relies on touch is bad. This is a virtual vision interface and everthing should be determined by that. So if you had a device in you hand that was something like a laser pointer, and it would show a red dot at the location that you are pointing to in the virtual world, then you could just point and press a small button on the device to go to a location.
As for text, I would imagine that text would not be like it is in the screen shots. You need to have shapes or colors or something else, and when you point to it, it shows the text of what it is supposed to be.
Again, all this is in development, and we will try several things before we find out what seems to be the best. But I don't think you have to worry about the applications that should not be 3D going that way. Unless you have that pointy hair boss that thinks 3D is the new buzz word and makes you do your email in 3D.
I was trying to use a simple example that would not get me into trouble by saying something that I'm not supposed to.
SGI has and is still working on many 3D databases, that can let the user see literally hundreds of millions of records at the same time. Using shapes and colors you can see the trends of your data. Much like a graph but with more information. Something like who voted for whom in what county could be used . You can see the trends of where more people voted for Bush or for Gore. And you also could tell where it was close, unlike the charts that are shown by CNN.
But instead of looking at a 19 inch(give or take a few inches) screen, you could be in the middle of a database, that can give you large amounts of information just by turning your head. Also, remember that you are not alone in the virtual space. You could hold a conference (if you had enough equipment) and show everyone the information you are discussing. You can also have others showing their information and you just turn you head to view the two different things.
Again, I believe that this is the next step into advanced technologies dealing with information.
Although I said VR helmets, we really use something that looks more like glasses.
I work in the Advanced Technologies of my company. We have had several people come of with ideas to produce such a thing. My corporation is mainly DoD but we are also starting to get into the Commercial world.
Some uses:
With a VR helmet that can detect head motion... imagine this:
You are sitting in the middle of a virtual warehouse that is a database. You see virtual cabinets and files. All you need to do is take a look up and you automatically come to some draw that contains the data you need.
Also, more in the DoD world. You can now have users train in a virtual battle field, or be able to view what others see. Or more realistically, have sensors set up around your base, and have security able to monitor the entire base that is sent back digitally as a smaller model in real time so that MPs can use their peripheral vision to detect intrusions.
These are just some of the many.. (that I can say) and there are many more.
Those that do not understand the possibilities should not be involved in the process.
You need to start now working on the things that don't make sense with todays technologies, so that you can better understand what the future brings.
From me? No. But if I were buying an IBM, SGI, HP machine, and it needed a patch. Then yes, I would download it from them.
If a trusted group, company, group or consortium, forked the kernel for their own use, then if I needed something with the same goals, I would download my kernel from them instead of the "stock kenel" from Linus.
My attitude is not a "write your own" but to take what is out there and work on it. If there's an enhancement to be made, and Linus won't accept it. Then try to find others (be it companies or individuals) that share your views and start a fork. A group is much more trustworthy than a single individual (with the exception of Linus:) ( and I'm talking code and not politics!). Samba did this with the NT/PDC, why can't Linux do the same between palm tops, desktops, and mainframes?
Writing your own kernel or forking it yourself is not an acceptable answer. But to go and get a group of users that share your view and together do the fork, is!
Interesting. How do you feel about a non-New Yorker coming in and running for senate? What qualifies her to pack her bags, come to NY, and represent you. Does she truly have a better handle on the issues or is she the best the democrats can do having exausted their supply of native democrats? Think about it.
Oh I have, and in the beginning, that's all I heard. People here have grown tired of hearing the carpet bagger gig. But the race is stil primary whether or not you like Hillary. I've watched the two candidates for a while now. And I actually like what she has to say. Now if she is a good candidate to get the job done, is another story. I've listen to Lazio too, but he seems too right wing for my taste. So my answer is I'm not sure on either. All of my colleagues hate her for no apparent reason, or just because she seems to be in it for the power trip. So being the rebel, I support her (verbally). She's not a candidate that I would prefer. But I like her more than Lazio.
To go back to your original question. No, it doesn't bother me that she's from a different state. Right now our state is pretty screwed up. But that is more a local problem than a national one. We have yet to see the econonmic boom, except for the cases of employees leaving the area for better jobs in the South. Most of our government at the local level is republican, but I'm not blaming them, I voted them in. The democrates are no better. I would like to get people from outside the state to run things here. I've heard that outsiders don't know our problems. Our problems are pretty obvious, and maybe the locals don't know the solutions. An outsider might be what we need.
syntex. " [sic] At least I got it right in the subject :-)
Actually, you missed my point.
If for some reason I hit the tab on the "y" part, I would not know it was a mistake until I really analyze the code. It is not as easy to make a mistake with adding the "}" in the wrong place. Yes it can be done, but not as easily. It is easier to make indentation mistakes in Python, and that will be harder to spot it, especially if you have long code segments and get messed up in the nesting structure. Maybe you could add begin and end comment statements to help in this, but that is an overhead that few, if any, programmers will do.
My preferred scripting language is Perl, and a coworker of mine prefers Python. We both make fun of each other and have debates on the issue all the time. But this one point, he actually agrees with me.
There are those that like the Python way, and there are those that like the Perl way. This is a Holy war and will never end. So, I too believe that Python will be around in 20 years (although it may change) but I also believe that Perl will be around in 20 years. This is the case because it is a Holy war, and as we can learn from the Mid East, they can last a long time.
Steven Rostedt
What's wrong with the legibility answer? I think that's an *excellent* reason! Don't care if your code is legible?
In other words: "NO, I don't have another answer".
Sorry, but I also don't care for the indentation for the exact reason that he gives.
if (x == 4)
x = 10;
y = 6;
Now how did I know that the writers intent was
if (x == 4) { x = 10; }
y = 6;
or
if (x == 4) {
x = 10; y = 6;
}
the if without braces should also be avoided in C but I do fall for that too.
Now if you use the braces, you know what the programmers intent was. But with Python, you don't. It could have been an indentation mistake, and that is harder to debug.
So if they ment
if (x == 4) { x = 10;}
y = 6;
How will you know with just an indentation syntex.
I used Python for about a month, and gave up and went back to Perl for scripting. This is probably because of my long C experience.
I believe in the More than one way of doing it. That's also probably why I hate MS Windows!
Steven Rostedt
Although Wine has improved a lot, I must recommend Win4Lin. For $30 I bought version 2 and it runs all the apps (Quicken and Turbo Tax, MS Office) I need on Windows without ever rebooting. Although it is not great for gaming, but I don't do too much of that, and when I do, I try to pick the games that run on Linux (Quake and UT).
But Win4Lin is great, it lets you do things on Windows without rebooting, it doesn't cost the same as VMWare nor is it a hog as VMWare is. I run things smoothly on 94M RAM, (it seems as though my windows apps run faster in Win4Lin then they do natively, but how can that be?)
Win4Lin is NOT a true virtual machine. I call it a semi-VM. It will NOT run NT or 2000. It is only for the 9x series. So it is not for everyone. It also has problems with MS SMB, but TCP works fine. If you want a product that you can do windows work (Office, Quicken, and the Like) without rebooting from Linux, I strongly recommend it. It helped me out a lot at work, since I do my developing in Linux and all my coworkers keep sending me power point and word documents.
Steven Rostedt
I think this is very usefull. Especially when I'm in a meeting, and I bring a laptop to quickly type up notes. Although I would not use this for the text recognition, but for the drawing diagrams. We usually have a white board to write on and show diagrams of the design, and I don't have time to enter it in some graphics utility. So being able to just draw it with a pen would be a great help.
Same thing goes for business trips. I write ideas for software products into a laptop, but there are times when I want to draw pictures to help explain the idea. Again, I don't want a graphics tool, but to just draw something would be of great help.
Steven Rostedt
Ok, the "what is Open Linux bsdnix" thing would go into the "funny" catergory, and has nothing to do with Linux security. But the following...
questions, are more legit, and have been commonly asked by newbies. The number of times I get someone calling me up and asking me why they can't log in as root is amazing. I would also add that not ever loging in as root (except for system admin stuff) should be stated in the FAQ.
Steven Rostedt
I didn't take that post as funny.
These are "Frequently Asked Questions" about Linux security and you would expect that the FAQ would answer these. Yes there are good questions answered in the FAQ but you also want to answer the stupid ones too, so you are not answering them in the news group.
Steven Rostedt
I got from the previous poster's comment, not that MS doesn't have Itanium boxes to test on, but that Linux would have been tested in real world cases by those that have taken the risk of implementing some system with new Linux/Itanium boxes.
Real testing comes with real use, not in labs.
Although MS could do real testing if they move something like HotMail onto Itanium machines. But I would doubt they would do such a thing before a release.
Steven Rostedt
The difference comes from being open or being closed. I always liked the idea of COM and .NET, but I don't like what MS does with it. Meaning their common tactic of embrace and expand. People get suckered in and they change the system so that you are stuck with MS and don't have any other choice. But if it is in an open environement, where all development is viewable, and source code available, and such, it can grow and be use with no worry about being locked into one system.
.NET is full compatible with Linux, then I may change my mind about Microsoft.
I'm sure we will soon see GNOME using the same technology if this catches on.
MS keeps saying that they will become compatible with others, but their record is poor in this respect. If they port something, it is usually of lesser quality.
I don't consider myself a hypocrite, unless this ends up as some proprietary protocol and I'm still supporting it.
I'm not saying everything must be open source, but I do believe all protocols must be. When COM and
Steven Rostedt
When it comes to security, it pays to be a real prick. Sorry, but it's true. In a small company, you might be able to get away with being a little lenient. But when it comes to multi-million dollar industries, or real life safety, you have to be a hard ass. A co-worker of mine, one day walked through an airport metal detector and it went off. Instead of simply going back through the detector and removing any more metal, he jokenly said "damn, must be my gun". Needless to say, he missed his flight. He spent the night with security. Moral of the story... don't mess with security, they have no sense of humor.
This is the way security has to be, live with it.
Steven Rostedt
I keep hearing that Netscape lost the browser war. But the majority of people here where I live Still use Netscape, and think that Netscape won. But then again, I live in New York, the state that had the highest percentage for Gore, and we think he also won.
But seriously, my company, Lockheed Martin, which is fairly large and is basically dominated by Microsoft (we try to partner with them at every chance we get), but Netscape is still the officially supported browser. In fact, all our internal web pages are tested for Netscape and little testing is done for IE.
Being a Linux type of guy, I'm sticking with Netscape. I don't have the time to install Mozilla. I did a while ago, but that was when it crashed more then 4.7. I've tried a few other browsers (Konquerer and Opera) but they vary from Netscapes interface, which I've grown accustom to. Altough when Netscape changed to the new interface, it took a little to get use to it, and now that I have, I'm not inclined to change very much.
I'm not trying to say that Netscape's UI is any better than any other Browser. In fact, I'm sure most of you can bring up valid points to why it is not better. But I'm use to it, and I'm sure there are others that are too, and don't care to change. When Netscape 6 slims down to run on my P75 45Meg RAM Laptop, then I might switch to that.
Steven Rostedt
Let me rephrase that. A TM can simulate any computer program that can be written for todays computers. TM can simulate more than mere algorithms, since an algorithm is something that terminates on all inputs. TM's may not terminate, and may run forever, but that would be useless.
Any program you think of will eventually be converted into machine language, that has op codes, registers, and memory. It's not very hard to write a TM to simulate the op-codes of a CPU, and include cache (as a tape) as well as registers, and memory.(It may be tedious, but not hard). Then any program that is compiled to that CPU can be simulated by that TM.
If you replace your video card and monitor with a tape, you get the same thing as a TM. If you made a video card that could read a tape of a TM (hypothetically of course) then you could actually run Quake 3. So if your computer took in a TM input, then you can still run any program you can today.
Steven Rostedt
I hate to slash dot my school, but I'm in a Masters class right now that uses the above mentioned TM simulator It works pretty well, but is very picky on format. Here's an example input file (from one of my assignments) that explains how it works:
// input tape alphabet
// tape alphabet
// number of tapes
// num. of tracks on tape 0
// num. of tracks on tape 1
// num. of tracks on tape 2
// num. of tracks on tape 3
// tape 0 is 1-way infinite
// tape 1 is 1-way infinite
// tape 2 is 1-way infinite
// tape 3 is 1-way infinite
// initial state
// final state
file assign3.atm:
ATM
{w (a+b+c)* : na(w) = nb(w) = nc(w) > 0 }
a b c
a b c d B
4
1
1
1
1
1
1
1
1
q0
q3
q0 a+B+B+B q1 a+d+d+d s+r+r+r
q0 b+B+B+B q1 b+d+d+d s+r+r+r
q0 c+B+B+B q1 c+d+d+d s+r+r+r
q1 a+B+B+B q1 a+a+B+B r+r+s+s
q1 b+B+B+B q1 b+B+b+B r+s+r+s
q1 c+B+B+B q1 c+B+B+c r+s+s+r
q1 B+B+B+B q2 B+B+B+B s+l+l+l
q2 B+a+b+c q2 B+a+b+c s+l+l+l
q2 B+d+d+d q3 B+d+d+d s+r+r+r
end
This simply checks to see if a string contains the same number of a's b's and c's.
The file starts after the "file" line.
ATM is needed.
comment is next.
The input tape alphabet
The tape alphabet
The number of tapes.
For each tape, list the number of tracks.
For each tape, is it infinite one way or two ways
The starting state.
The final state
All the state transactions:
of the format: state
followed by the expected input on the tapes (each tape separated by a +)
Then the next state to go to
Then what to write on the tapes
Then the directions to move "s=stationary, r=right, l=left"
The file must end with the word "end"
Have fun.
Steven Rostedt
Turing machines have no memory, they use the tape as a memory. So the tape is the memory. Although I'm sure someone has made one that does have some extra memory, a stack or something.
You mean like Push Down Automata. It has been proven that a Turing Machine can simulate a PDA. But that's not saying much, since a TM can simulate any computer program of today, and since in theory a TM has an infinite amount of tape, it is even more powerful than any computer of today.
I'm currently in a class for my masters in Automata and Formal languages and such, which includes all the fun thoeries of TM and such. What I find most impressive, is that a TM was invented way before computers, and it has basically the same functionallity.
Steven Rostedt
There is no Linux market for desktop applications.
I must disagree. No is such a strong word. If you had said "little" I would agree, but not "no". There is a good market for desktop applications on Linux, it just is not a main stream market. I can't stand using Windows. I feel so constrained, that anything I want to do, I need to go out and buy a package, or down load some closed source utility I have no idea how it works.
But there are many like me that prefer to work in Linux/FreeBSD/Unix, and we do need desktop applications that we can use to communicate with the rest of the world. Unfortunately, right now the main document "protocol" is proprietary. I'm hoping that something like XML can be used to change the format of documents that are passed to and from individuals.
But don't say that there is NO market. I have bought/paid for desktop applications for Linux (Corel WP and Star Office: before it was bought by Sun). I prefer to work with LaTeX, but most people I need to send documents to, don't know any other format but ".doc". I know I have a need for desktop applications, so if it is only me, I am still a market. Just a very small one!
Steven Rostedt
Come now, I don't even think that Nick really believes that there is Linux code in Windows. But I think he loves the attention when he pushes the rumor.
Now I will say that Win4Lin has been a life saver at work for me. I'm "forced" to use Word as my "official" document word processor. But I use Linux for development and code. I deliver code to Sun, AIX and Linux platforms and Linux seems to be the easiest to port to and from. As well I enjoy working straight from my own PC then to telnet to a server that I don't control.
Ever since I found Win4Lin, my rebooting days were over. It is fast and doesn't bog down my 94 meg 300MHz Pentium II. It is not as robust as VMware, but it doesn't take up the resources, and can use the same filesystem as Linux. So for just needing to use Windows apps, I strongly recommend it.
And it was really funny when I received the BSOD, which I had to do a screen save to send to friends, and all I had to do was restart Win4Lin and I never lost any of my development work.
Steven Rostedt
as an expierienced Linux user, I'll second this.
I highly recommend it to anyone who uses Linux. It was one of the books I used to successfully get slackware installed on my old ThinkPad 755C.
It is a must have for any linux user who wants to get the most out of Linux.
</PLUG>
Steven Rostedt
congradulations, cockgobbler, you've just described a drill-down query.
You have such a beautiful way with the english language. The algorithms may not be new, but the implementation is.
I never said that SQL was hard, it's quite trivial. Yes there are standard ways to look things up without actually writing SQL. I said it was just time consuming, and you need to be specific. The idea of using a 3D database is the fact that you can use what humans have the best concept of. And that is visualization. Going to general parts of a database and quickly scan the data to find what you are looking for. Not unlike flipping through a book to find some topic, that you don't remeber the exact text.
So before I get to read more of your lovely words, my point is not that 3D databases are going to bring new techniques of searching data (which they will) but that it will allow humans to use more of their senses to get the job accomplished instead of just thinking up queries and have what you have: tunnel vision
Steven Rostedt
The warehouse metaphor was a simple example, and I didn't explain it very well. I work with lots of large databases, and writing a bunch of SQL reports takes time. Especially if you want quick general information. A virtual Warehouse would be useless if it tried to simulate an actual warehouse. You need to think about dynamic rooms that use something like hypertext links. You go to a certain information, and you need to see all the related data for it. So you create a dynamic "room" that contains all the related data. You look forward, you see the main topic, around it you see the related information. You now see something in the room you want to focus on, you point and "click" on the new topic, and create a new room that contains the data related to the new topic.
Even if you don't like these examples, you need to think more about the possibilities instead of complaining about a new technology. Yes I wouldn't want to replace my emacs environment with a 3D one, unless I find a real use for it. I strongly believe that there are many benefits from using a 3D space for some applications and databases. Now if you have a trivial database, then no, just keep it the way it is. But if you have a more complex one, it might be better to look ahead and see what you can do.
You have a good way of putting down an idea, but I did not notice any improvements or a better one. I like criticism, but lets make it constructive please.
Steven Rostedt
I understand your confusion.
3D can benefit the searching and orginization of data, more than viewing of it, unless you want to see trends.
This is the main reason I like a paper book more than one on the screen. If I know something is somewhare in the middle of a book, I find it is easier to flip to it than to use a scroll bar. Or if I know the approximate location of a picture, I find it easier to flip the pages and find it, then to scroll down a document and find it. Yes, books don't have that automatic search for text, but it is more of a pain if you don't know of the exact text you are looking for.
Now imagine a three dimensional database. Where you can point to (using something like a laser pointer) and be brought to exactly the location you are looking for. By knowing where certain types of data is located, you can brouse the area useing more of your peripheral vision then a small screen.
I mentioned the pointer since you mentioned that you can't tell when you actually touched something. A 3D interface that relies on touch is bad. This is a virtual vision interface and everthing should be determined by that. So if you had a device in you hand that was something like a laser pointer, and it would show a red dot at the location that you are pointing to in the virtual world, then you could just point and press a small button on the device to go to a location.
As for text, I would imagine that text would not be like it is in the screen shots. You need to have shapes or colors or something else, and when you point to it, it shows the text of what it is supposed to be.
Again, all this is in development, and we will try several things before we find out what seems to be the best. But I don't think you have to worry about the applications that should not be 3D going that way. Unless you have that pointy hair boss that thinks 3D is the new buzz word and makes you do your email in 3D.
Steven Rostedt
I was trying to use a simple example that would not get me into trouble by saying something that I'm not supposed to.
SGI has and is still working on many 3D databases, that can let the user see literally hundreds of millions of records at the same time. Using shapes and colors you can see the trends of your data. Much like a graph but with more information. Something like who voted for whom in what county could be used . You can see the trends of where more people voted for Bush or for Gore. And you also could tell where it was close, unlike the charts that are shown by CNN.
But instead of looking at a 19 inch(give or take a few inches) screen, you could be in the middle of a database, that can give you large amounts of information just by turning your head. Also, remember that you are not alone in the virtual space. You could hold a conference (if you had enough equipment) and show everyone the information you are discussing. You can also have others showing their information and you just turn you head to view the two different things.
Again, I believe that this is the next step into advanced technologies dealing with information.
Although I said VR helmets, we really use something that looks more like glasses.
Steven Rostedt
I work in the Advanced Technologies of my company. We have had several people come of with ideas to produce such a thing. My corporation is mainly DoD but we are also starting to get into the Commercial world.
Some uses:
With a VR helmet that can detect head motion... imagine this:
You are sitting in the middle of a virtual warehouse that is a database. You see virtual cabinets and files. All you need to do is take a look up and you automatically come to some draw that contains the data you need.
Also, more in the DoD world. You can now have users train in a virtual battle field, or be able to view what others see. Or more realistically, have sensors set up around your base, and have security able to monitor the entire base that is sent back digitally as a smaller model in real time so that MPs can use their peripheral vision to detect intrusions.
These are just some of the many.. (that I can say) and there are many more.
Those that do not understand the possibilities should not be involved in the process.
You need to start now working on the things that don't make sense with todays technologies, so that you can better understand what the future brings.
Steven Rostedt
It sounds like we are arguing the same point!
Steven Rostedt
It's like throwing a piece of garbage on the ground and saying that one piece of garbage won't harm anything.
But if you get thousands or millions of people who share that same thought, is when you get into trouble.
I like to think that this is like infinity times zero. Which one wins? My vote may not count, but the fact that I vote does!
Didn't Gandhi (however you spell it) say "What you do is not important, but it is very important that you do it".
Steven Rostedt
From me? No. But if I were buying an IBM, SGI, HP machine, and it needed a patch. Then yes, I would download it from them.
:) ( and I'm talking code and not politics!). Samba did this with the NT/PDC, why can't Linux do the same between palm tops, desktops, and mainframes?
If a trusted group, company, group or consortium, forked the kernel for their own use, then if I needed something with the same goals, I would download my kernel from them instead of the "stock kenel" from Linus.
My attitude is not a "write your own" but to take what is out there and work on it. If there's an enhancement to be made, and Linus won't accept it. Then try to find others (be it companies or individuals) that share your views and start a fork. A group is much more trustworthy than a single individual (with the exception of Linus
Writing your own kernel or forking it yourself is not an acceptable answer. But to go and get a group of users that share your view and together do the fork, is!
Steven Rostedt
Interesting. How do you feel about a non-New Yorker coming in and running for senate? What qualifies her to pack her bags, come to NY, and represent you. Does she truly have a better handle on the issues or is she the best the democrats can do having exausted their supply of native democrats? Think about it.
Oh I have, and in the beginning, that's all I heard. People here have grown tired of hearing the carpet bagger gig. But the race is stil primary whether or not you like Hillary. I've watched the two candidates for a while now. And I actually like what she has to say. Now if she is a good candidate to get the job done, is another story. I've listen to Lazio too, but he seems too right wing for my taste. So my answer is I'm not sure on either. All of my colleagues hate her for no apparent reason, or just because she seems to be in it for the power trip. So being the rebel, I support her (verbally). She's not a candidate that I would prefer. But I like her more than Lazio.
To go back to your original question. No, it doesn't bother me that she's from a different state. Right now our state is pretty screwed up. But that is more a local problem than a national one. We have yet to see the econonmic boom, except for the cases of employees leaving the area for better jobs in the South. Most of our government at the local level is republican, but I'm not blaming them, I voted them in. The democrates are no better. I would like to get people from outside the state to run things here. I've heard that outsiders don't know our problems. Our problems are pretty obvious, and maybe the locals don't know the solutions. An outsider might be what we need.
Steven Rostedt