Page 5 of 10 FirstFirst ... 2345678 ... LastLast
Results 161 to 200 of 389

Thread: ChatGPT

  1. #161
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by TysonLPrice View Post
    I don't see some wide gap???
    I was trying to avoid coming off as rude, condescending or insulting. The truth is that his post made me feel like I'm trying to talk grown folks stuff at the kiddie table. If it continues, it will just devolve into madness like the Twitter thread. I'm trying to avoid that.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  2. #162
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by Niya View Post
    I was trying to avoid coming off as rude, condescending or insulting. The truth is that his post made me feel like I'm trying to talk grown folks stuff at the kiddie table. If it continues, it will just devolve into madness like the Twitter thread. I'm trying to avoid that.
    I disagree with " I'm trying to talk grown folks stuff at the kiddie table". I agree comments like that do lead to devolving threads.
    Please remember next time...elections matter!

  3. #163
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: ChatGPT

    Silence does not imply compliance.

  4. #164
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by dilettante View Post
    Silence does not imply compliance.
    I think an argument can be made that "silence in the face of injustice is morally equivalent to compliance with that injustice".

    https://blog.ginsudo.com/2020/06/24/...is-compliance/
    Please remember next time...elections matter!

  5. #165
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by TysonLPrice View Post
    I disagree with " I'm trying to talk grown folks stuff at the kiddie table".
    It's not really a matter of agreeing or disagree with it. I'm describing here how I felt. It would make more sense to say that you think I should not feel that way. For the record I got nothing against wes4dbt. I just don't think we can have these kinds of discussions. It will only frustrate me. I think it's better for me to have these conversations with someone of like mind.

    I will still comment on what I think about things here and there, but I'm done with all that back and forth. Since the Twitter thread, I've realized that there is nothing to be gained by debating with the "other side".

    I think this whole Trump thing is more bogus nonsense and that's that. Either you agree or not. I ain't fixing to argue about it for another 10 pages.
    Last edited by Niya; Mar 27th, 2023 at 09:10 AM.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  6. #166
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by Niya View Post
    It's not really a matter of agreeing or disagree with it. I'm describing here how I felt. It would make more sense to say that you think I should not feel that way. For the record I got nothing against wes4dbt. I just don't think we can have these kinds of discussions. It will only frustrate me. I think it's better for me to have these conversations with someone of like mind.

    I will still comment on what I think about things here and there, but I'm done with all that back and forth. Since the Twitter thread, I've realized that there is nothing to be gained by debating with the "other side".

    I think this whole Trump thing is more bogus nonsense and that's that. Either you agree or not. I ain't fixing to argue about it for another 10 pages.
    OK...fair enough. But another way to interpret that is you do have time to waste with anyone that doesn't agree with you. " Since the Twitter thread, I've realized that there is nothing to be gained by debating with the "other side". " Some people prefer "echo chambers". Millions of Fox viewers can vouch for that.
    Please remember next time...elections matter!

  7. #167
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    38,989

    Re: ChatGPT

    I was going to say it was just cynicism, which I do feel is deadening, but then I thought a bit more about it. Niya is from some unnamed Caribbean nation. Historically, the US has treated those islands something like a pigeon treats a statue. His view might make quite a bit of sense from that perspective.

    In the US, we see a certain amount of difference. From Europe, there's probably quite a different view of the US. They probably see us as something like a volcano: Interesting, scenic, but with the potential to almost randomly destroy everything. The view from the Caribbean...is probably not that. The different presidents, whose differences are so important to us, are just different pigeons to them: The end result is the same.
    My usual boring signature: Nothing

  8. #168
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by Shaggy Hiker View Post
    I was going to say it was just cynicism, which I do feel is deadening, but then I thought a bit more about it. Niya is from some unnamed Caribbean nation. Historically, the US has treated those islands something like a pigeon treats a statue. His view might make quite a bit of sense from that perspective.

    In the US, we see a certain amount of difference. From Europe, there's probably quite a different view of the US. They probably see us as something like a volcano: Interesting, scenic, but with the potential to almost randomly destroy everything. The view from the Caribbean...is probably not that. The different presidents, whose differences are so important to us, are just different pigeons to them: The end result is the same.
    Ukrainians might disagree...the last UA president wanted campaign dirt on his American political opponent in return for military support. The current President is giving them full military support as long as they fight.
    Please remember next time...elections matter!

  9. #169
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    38,989

    Re: ChatGPT

    Disagree with what? I don't see how that is really relevant to what I said. Ukraine isn't an EU country, and it certainly isn't a Caribbean nation, and those are the only two groups I mentioned. I could have gone on to how I would expect African nations and some Asian nations to see us, but I didn't. Ukraine would be an example of those.
    My usual boring signature: Nothing

  10. #170
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by Shaggy Hiker View Post
    Disagree with what? I don't see how that is really relevant to what I said. Ukraine isn't an EU country, and it certainly isn't a Caribbean nation, and those are the only two groups I mentioned. I could have gone on to how I would expect African nations and some Asian nations to see us, but I didn't. Ukraine would be an example of those.
    I was referring to your statement:

    "The different presidents, whose differences are so important to us, are just different pigeons to them: The end result is the same." For the Ukrainians the difference between the last President and the current one is vast. Same with the European countries fighting with us. The last one wanted to get rid of NATO and the current supports making it stronger. Huge difference. Trump slammed Germany every chance he got, Biden doesn't.

    On a global scale one President pulled out of the climate accord and the next put us back in. That affects the Caribbean.
    Last edited by TysonLPrice; Mar 27th, 2023 at 01:03 PM.
    Please remember next time...elections matter!

  11. #171
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,235

    Re: ChatGPT

    Wouldn't it be good if Trump used chatGPT to some good effect, such as correcting his grammar, making sure what he says actually means something, checking that the words he uses exist, ensuring that what he says is sensible thing to say for an intended President. ChatGPT might be of some real use here.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  12. #172
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by Shaggy Hiker View Post
    I was going to say it was just cynicism, which I do feel is deadening, but then I thought a bit more about it. Niya is from some unnamed Caribbean nation. Historically, the US has treated those islands something like a pigeon treats a statue. His view might make quite a bit of sense from that perspective.

    In the US, we see a certain amount of difference. From Europe, there's probably quite a different view of the US. They probably see us as something like a volcano: Interesting, scenic, but with the potential to almost randomly destroy everything. The view from the Caribbean...is probably not that.
    Something like that. There's a little more nuance but yes, it's about perspective. However, it's not just about our relationship to America in terms of American foreign policy. It's also about cultural differences and economic differences too. All of these things together gives one a completely different perspective on the world.

    Quote Originally Posted by Shaggy Hiker View Post
    The different presidents, whose differences are so important to us, are just different pigeons to them: The end result is the same.
    This is pretty accurate, though there is some nuance here too. Both the left and right in America are really just a single system of control that works by pitting them against each other. The current culture war is the result. It keeps everyone distracted so they can never fully realize what America actually is. Americans think American is the land of the brave, home of the free bla bla bla......That's nonsense. America is a business. They are in the business of plundering the world. Granted, they don't do it through sheer military conquest like the empires of the past but rather through more underhanded methods like proxy wars or covert military operations. They also rely on the implicit threat of a conflict with their powerful military to obtain more favorable terms in negotiations with both enemies and allies alike.

    This is also where my extreme hostility towards liberalism comes from. I see it as a kind of cultural imperialism. For example, in the Twitter thread jmc trying to convince me that my definition of a woman is wrong, outdated and hateful is nothing short of a blanket judgement of an entire culture. There is no better example than this of imperialistic entitlement.

    Anyways moving on.....The wealth obtained by America through these imperialistic practices are funneled into the hands of a few American families and while they are doing that, the rank and file American never notices because they are too distracted by the Kardashians and reality TV, arguing about gender and pronouns, arguing over Trump, environmental alarmism etc.

    Don't get me wrong though, I don't blame them. Any powerful empire would do the same thing and perhaps America is the most benevolent dictator the world would ever see and if they didn't accept the role, someone far worse would no doubt have filled that void.

    All I'm saying is that I'm not under any illusions about how things really work.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  13. #173
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by TysonLPrice View Post
    OK...fair enough. But another way to interpret that is you do have time to waste with anyone that doesn't agree with you. " Since the Twitter thread, I've realized that there is nothing to be gained by debating with the "other side". " Some people prefer "echo chambers". Millions of Fox viewers can vouch for that.
    I was foolish enough to believe otherwise. In the Twitter thread, I accrued two bans in addition to getting the thread locked. What this taught me is that it doesn't matter one bit what my views are. All that matters is who is holding the "big stick". If you have the power to enforce your values, you don't need to debate.

    In this context, the better move would be to buy VBForums and then I can enforce whatever values I want. I won't need to debate anyone. Now obviously I can't buy VBForums so my second best option is an echo chamber of similar values.

    The point is that I've learned that debate solves nothing, power does.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  14. #174
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by yereverluvinuncleber View Post
    Wouldn't it be good if Trump used chatGPT to some good effect, such as correcting his grammar, making sure what he says actually means something, checking that the words he uses exist, ensuring that what he says is sensible thing to say for an intended President. ChatGPT might be of some real use here.
    The first time it disagreed with him he would label it fake
    Please remember next time...elections matter!

  15. #175
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by TysonLPrice View Post
    On a global scale one President pulled out of the climate accord and the next put us back in. That affects the Caribbean.
    It doesn't really matter if one president does one thing while another does something else. We still live by the whims of the "big dogs" of the world. All this stuff with climate change and whatnot isn't even a conversation here. Whatever "mandates" trickle down here from the decisions of the big powers of the world, we generally try to abide by them as best we can, even if we are getting screwed over and it's not because we believe in them, it's because we don't want American warships in our waters. No one really gives a lick about climate change here. We will do the bare minimum to not get chastised by "big daddy America".
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  16. #176
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by Niya View Post
    It doesn't really matter if one president does one thing while another does something else. We still live by the whims of the "big dogs" of the world. All this stuff with climate change and whatnot isn't even a conversation here. Whatever "mandates" trickle down here from the decisions of the big powers of the world, we generally try to abide by them as best we can, even if we are getting screwed over and it's not because we believe in them, it's because we don't want American warships in our waters.
    If you wound the clock back a couple hundreds years it was the same thing only different powers. England, France, Spain, Portugal. "Americans" didn't even have a wheel yet.
    Please remember next time...elections matter!

  17. #177
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by TysonLPrice View Post
    If you wound the clock back a couple hundreds years it was the same thing only different powers. England, France, Spain, Portugal. "Americans" didn't even have a wheel yet.
    This is true. I just said something similar:-
    Quote Originally Posted by Niya View Post
    Don't get me wrong though, I don't blame them. Any powerful empire would do the same thing and perhaps America is the most benevolent dictator the world would ever see and if they didn't accept the role, someone far worse would no doubt have filled that void.
    So yea, I agree that the world has always worked this way.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  18. #178
    PowerPoster
    Join Date
    Sep 2005
    Location
    Modesto, Ca.
    Posts
    5,196

    Re: ChatGPT

    All I'm saying is that I'm not under any illusions about how things really work.
    That's your biggest delusion. You talk in stereotypes. There doesn't seem to be any knowledge, just opinion. Which is fine, if it's stated that way and not as fact.

    You stated that Trump has the right to be upset because of all the bogus claims. I asked what information you had that proves the claims are bogus and your response was to just repeat the same claim then go on about you ideological views. Still no factual substance to support your statement. Just, they're bogus because I think the whole system is bogus. How is that even relevant? Are the laws to be ignored because you "think" the whole system is bogus. Or that the mythical "they" are controlling everything.

    There is a big gap between us. I want to base my judgement on factual/evidentiary information and you want to pass off personal opinion as fact.

  19. #179
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    38,989

    Re: ChatGPT

    Quote Originally Posted by Niya View Post
    No one really gives a lick about climate change here. We will do the bare minimum to not get chastised by "big daddy America".
    Yeah, but you aren't the problem, we are. A large population multiplied by a very high consumption per person equals a problem.
    My usual boring signature: Nothing

  20. #180
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: ChatGPT

    Proves the claims are bogus? What happened to "presumption of innocence until proven guilty" anyway?

  21. #181
    PowerPoster
    Join Date
    Sep 2005
    Location
    Modesto, Ca.
    Posts
    5,196

    Re: ChatGPT

    Quote Originally Posted by dilettante View Post
    Proves the claims are bogus? What happened to "presumption of innocence until proven guilty" anyway?
    I have no issue with that. The current investigations are in the process of deciding if a provable criminal act has taken place. But I haven't seen anything that points to a bogus investigation. That's why I asked what information was used to make that claim.

  22. #182
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by wes4dbt View Post
    The current investigations are in the process of deciding if a provable criminal act has taken place.
    Your innocence is so adorable.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  23. #183
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by Shaggy Hiker View Post
    Yeah, but you aren't the problem, we are. A large population multiplied by a very high consumption per person equals a problem.
    True, but that doesn't mean they won't try to push their agendas here. Though I think climate change in particular is more of an WEF thing than an American thing. Still it's all the same, big dogs with big teeth making the rules.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  24. #184
    PowerPoster
    Join Date
    Sep 2005
    Location
    Modesto, Ca.
    Posts
    5,196

    Re: ChatGPT

    Quote Originally Posted by Niya View Post
    Your innocence is so adorable.
    Smart arse remarks don't hide your lack of factual substance.

    But thanks, I haven't been called adorable for a long time. Glad to know I still got it.

  25. #185
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by wes4dbt View Post
    Smart arse remarks don't hide your lack of factual substance.

    But thanks, I haven't been called adorable for a long time. Glad to know I still got it.
    lol
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  26. #186
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Does the Pope wear a funny coat?
    Attached Images Attached Images  
    Please remember next time...elections matter!

  27. #187
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    That's an AI image. I think it was made by Midjourney.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  28. #188
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Speaking of which, I experienced something scary a few hours ago. I was watching a new video on GPT-4 and what people have been pushing it to do. I took some tips and got it to write an entire WPF application and it only got 3 minor things wrong! This was definitely far beyond GPT-3. By next year, us programmers would be obsolete.

    Code:
    Imports System.IO
    Imports System.IO.Compression
    Imports System.Threading
    
    Public Class ZipUtility
        Public Delegate Sub ProgressReportDelegate(currentFile As String, zippedBytes As Long, totalBytes As Long)
        Public Delegate Sub TotalProgressReportDelegate(zippedBytes As Long, totalBytes As Long)
    
        Public Class ZipUtilityBuilder
            Private _files As String()
            Private _progressReporter As ProgressReportDelegate
            Private _totalProgressReporter As TotalProgressReportDelegate
            Private _outputZipFile As String
    
            Public Function WithFiles(files As String()) As ZipUtilityBuilder
                _files = files
                Return Me
            End Function
    
            Public Function WithProgressReporter(progressReporter As ProgressReportDelegate) As ZipUtilityBuilder
                _progressReporter = progressReporter
                Return Me
            End Function
    
            Public Function WithTotalProgressReporter(totalProgressReporter As TotalProgressReportDelegate) As ZipUtilityBuilder
                _totalProgressReporter = totalProgressReporter
                Return Me
            End Function
    
            Public Function WithOutputZipFile(outputZipFile As String) As ZipUtilityBuilder
                _outputZipFile = outputZipFile
                Return Me
            End Function
    
            Public Function Create() As ZipUtility
                Return New ZipUtility(_files, _progressReporter, _totalProgressReporter, _outputZipFile)
            End Function
    
        End Class
    
        Private _files As String()
        Private _progressReporter As ProgressReportDelegate
        Private _totalProgressReporter As TotalProgressReportDelegate
        Private _outputZipFile As String
        Private _cancellationTokenSource As CancellationTokenSource
    
        Private Sub New(files As String(), progressReporter As ProgressReportDelegate, totalProgressReporter As TotalProgressReportDelegate, outputZipFile As String)
            _files = files
            _progressReporter = progressReporter
            _totalProgressReporter = totalProgressReporter
            _outputZipFile = outputZipFile
            _cancellationTokenSource = New CancellationTokenSource()
        End Sub
    
        Public Async Function Begin() As Task
            Using archive As New ZipArchive(File.OpenWrite(_outputZipFile), ZipArchiveMode.Create)
                Dim totalBytes As Long = _files.Sum(Function(f) New FileInfo(f).Length)
                Dim zippedBytes As Long = 0
    
                For Each file As String In _files
                    _cancellationTokenSource.Token.ThrowIfCancellationRequested()
    
                    Dim fileInfo As New FileInfo(file)
                    Dim entry As ZipArchiveEntry = archive.CreateEntry(fileInfo.Name)
                    Dim curFileZippedBytes As Long = 0
    
                    Using entryStream As Stream = entry.Open()
                        Using fileStream As FileStream = fileInfo.OpenRead()
                            Dim buffer(4096) As Byte
                            Dim bytesRead As Integer = Await fileStream.ReadAsync(buffer, 0, buffer.Length)
    
                            While bytesRead
                                _cancellationTokenSource.Token.ThrowIfCancellationRequested()
    
                                curFileZippedBytes += bytesRead
    
                                Await entryStream.WriteAsync(buffer, 0, bytesRead)
                                zippedBytes += bytesRead
                                _progressReporter?.Invoke(file, curFileZippedBytes, fileInfo.Length)
                                _totalProgressReporter?.Invoke(zippedBytes, totalBytes)
    
                                bytesRead = Await fileStream.ReadAsync(buffer, 0, buffer.Length)
                            End While
                        End Using
                    End Using
                Next
            End Using
        End Function
    
        Public Sub Cancel()
            _cancellationTokenSource.Cancel()
        End Sub
    End Class
    Code:
    <Window x:Class="MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="Zip Utility" Height="450" Width="800">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>
            <ListBox x:Name="FileListBox" Grid.Row="0"/>
    
            <StackPanel Grid.Row="1" Orientation="Horizontal" Margin="20,5,0,5">
                <Button x:Name="OpenButton" Content="Open" Width="75" Height="25" Margin="0,0,5,0" Click="OpenButton_Click"/>
                <Button x:Name="StartButton" Content="Start" Width="75" Height="25" Margin="0,0,20,0" Click="StartButton_Click"/>
                <Label x:Name="ProgressLabel" Content="Progress:"/>
                <ProgressBar x:Name="FileProgressBar" Width="200" Height="20" Margin="5,0,0,0"/>
                <Label x:Name="TotalProgressLabel" Content="Total Progress:"/>
            <ProgressBar x:Name="TotalProgressBar" Width="200" Height="20" Margin="5,0,0,0"/>
        </StackPanel>
    </Grid>
    </Window>
    Code:
    Imports System.IO
    Imports System.Windows.Threading
    Imports Microsoft.Win32
    
    Class MainWindow
    
        Private Async Sub StartButton_Click(sender As Object, e As RoutedEventArgs)
            Dim saveFileDialog As New SaveFileDialog With {
                .Filter = "Zip Files (*.zip)|*.zip",
                .DefaultExt = ".zip"
            }
    
            If saveFileDialog.ShowDialog() Then
                Dim outputZipFile As String = saveFileDialog.FileName
                Dim files As String() = FileListBox.Items.Cast(Of String).ToArray()
    
                Dim zipUtility As ZipUtility = New ZipUtility.ZipUtilityBuilder().
                                                WithFiles(files).
                                                WithProgressReporter(AddressOf UpdateProgress).
                                                WithTotalProgressReporter(AddressOf UpdateTotalProgress).
                                                WithOutputZipFile(outputZipFile).
                                                Create()
    
                Try
                    Await zipUtility.Begin()
                    MessageBox.Show("Zip operation completed.")
                Catch ex As OperationCanceledException
                    MessageBox.Show("Zip operation cancelled.")
                End Try
            End If
        End Sub
    
        Private Sub OpenButton_Click(sender As Object, e As RoutedEventArgs)
            Dim openFileDialog As New OpenFileDialog With {
                .Multiselect = True
            }
    
            If openFileDialog.ShowDialog() Then
                For Each file As String In openFileDialog.FileNames
                    FileListBox.Items.Add(file)
    
                Next
            End If
        End Sub
    
        Private Sub UpdateProgress(currentFile As String, zippedBytes As Long, totalBytes As Long)
            Dispatcher.Invoke(Sub()
                                  ProgressLabel.Content = $"Progress: {currentFile}"
                                  FileProgressBar.Value = (zippedBytes / totalBytes) * 100
                              End Sub)
        End Sub
    
        Private Sub UpdateTotalProgress(zippedBytes As Long, totalBytes As Long)
            Dispatcher.Invoke(Sub()
                                  TotalProgressLabel.Content = $"Total Progress:"
                                  TotalProgressBar.Value = (zippedBytes / totalBytes) * 100
                              End Sub)
        End Sub
    End Class
    That was written entirely by GPT-4 and I only had to make 3 very very minor corrections and only one of those things prevented it from compiling while the other two were minor bugs that even a human could make. This was the prompt that produced it:-
    I want to write a VB.Net Zip utility that allows you to select files to compress in the Zip format. It will be a WPF application that targets the .Net Framework version 4.8.

    The project should contain a class that is responsible for handling the zipping of files. It should be written using a the builder pattern written as a fluent interface. This fluent interface should consist of a method that takes an array of Strings that will be the names of files, another method that takes a delegate to report current the progress of the zipping operation. The delegate should be such that it will report the name of current file being zipped, the number of bytes already zipped for the current file, size of the current file. I also want another method on this fluent interface that takes a delegate which will report the total size in bytes of all the files being zipped as well as the number of bytes already zipped in total. I also want a method on the interface to specify the output zip file. The interface should have Create method to create the object with it's state set by the the various methods of the builder method calls. The Create should return this object but not execute the zipping process. The class should have a Begin method will tell the object returned by the Create method to begin the zipping process. This method should be awaitable. The class should also have a method for cancelling a zip operation.

    The methods of the builder that take delegates, I want them to use defined delegates and not Action(Of T) type delegates. You will name these delegates appropiately based on what they are for.

    Now when you're finished writing that class for me and I want you to inform me so that I may instruct you to proceed with writing the WPF UI interface for me.

    For the UI, I want a simple WPF window with two buttons at the bottom. One button will be used to select files to zip, the other button will be to start a zip operation. The entire form from the top up to where the buttons reside at the botton will contain a list box that shows the full path of all the files we have selected so far.

    When the open button is clicked, I want it to open an Open File dialog which allows me to select multiple files that will be listed in the list box. The start button will open a save file dialog which would allow me to specify the name and path of the output zip file. This dialog should have a default extension of ".zip". After we have selected a name and path for our zip file, I want our code to use the zip class we wrote earlier to perform the zip operation.

    Now I have stated that the bottom of the window will host the two buttons. These buttons should be stacked horizontally with a margin of 5 pixels between them. They should also be left justified with a margin of 20 off the left edge of the window. To the right of the buttons I want a labels and progress bars that return information on the current state of the zip operation like the current file and the number of bytes zipped etc. The Zip class we wrote earlier would provide this information through delegates. I leave it to you to figure out exactly how to arrange the labels and progress bars.

    Based on every thing I just said, I want you to write this program for me.
    One of the major tip I got from the video is to "make it do, not think", which basically means be as detailed as possible so that it doesn't have to think too deeply about what you want. They said this was one of the keys to making it do amazing things.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  29. #189
    PowerPoster
    Join Date
    Sep 2005
    Location
    Modesto, Ca.
    Posts
    5,196

    Re: ChatGPT

    Will be interesting to see how quickly this grows as a professional programming tool. I don't think programmers will be obsolete by next year but it should make young programmers nervious about the future. It seems possible that being a programmer may turn into describing an app and let these types of tools write the code. For now, your still going to need programming skills to verify the code and fix any mistakes. Even if stops making mistakes it will take time before we have blind trust.

    It is pretty amazing.

  30. #190
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by wes4dbt View Post
    Will be interesting to see how quickly this grows as a professional programming tool. I don't think programmers will be obsolete by next year but it should make young programmers nervious about the future. It seems possible that being a programmer may turn into describing an app and let these types of tools write the code. For now, your still going to need programming skills to verify the code and fix any mistakes. Even if stops making mistakes it will take time before we have blind trust.

    It is pretty amazing.
    Here's the thing though, I've rigorously tested the programming capabilities of 3 different iterations of GPT and each successive iteration massively out-performed the capabilities of the previous iteration. From that I could extrapolate how fast AI is evolving and where it's likely going to be in the next year. It may be true today that you will need to be a programmer to use it effectively as you will have to correct it's mistakes but I doubt that will be the case next year. I would not be surprised next year if it stops making mistakes altogether. Eventually, it will get good enough to where even non-programmers would be able to get solid outputs from it.

    I am telling you, AI is evolving rapidly and I do mean rapidly. I have never in my life seen anything like this. AI is making leaps and bounds in timescales that could be measured in months, not years or decades as is typical with technology.

    [EDIT]

    To add:

    That program I made GPT-4 write, out of curiosity I also gave the same prompt to the previous GPT-3.5 iteration just to see how it would perform. It made a tonne of mistakes and did things I explicitly told it not to do. The code was somewhat usable but it was nowhere near what I asked for. GPT-4 only made 3 tiny errors and got me 99% of the way there. The difference between successive iterations of this AI is huge.
    Last edited by Niya; Mar 28th, 2023 at 01:30 PM.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  31. #191
    PowerPoster
    Join Date
    Sep 2005
    Location
    Modesto, Ca.
    Posts
    5,196

    Re: ChatGPT

    Quote Originally Posted by Niya View Post
    Here's the thing though, I've rigorously tested the programming capabilities of 3 different iterations of GPT and each successive iteration massively out-performed the capabilities of the previous iteration. From that I could extrapolate how fast AI is evolving and where it's likely going to be in the next year. It may be true today that you will need to be a programmer to use it effectively as you will have to correct it's mistakes but I doubt that will be the case next year. I would not be surprised next year if it stops making mistakes altogether. Eventually, it will get good enough to where even non-programmers would be able to get solid outputs from it.

    I am telling you, AI is evolving rapidly and I do mean rapidly. I have never in my life seen anything like this. AI is making leaps and bounds in timescales that could be measured in months, not years or decades as is typical with technology.
    You may be right, we'll see.

    But a lot of things make large leaps in the the beginning. Which makes sense because there are large areas for improvement. Fixing the last 10% can take longer than creating the first 90%.

  32. #192
    Wall Poster TysonLPrice's Avatar
    Join Date
    Sep 2002
    Location
    Columbus, Ohio
    Posts
    3,834

    Re: ChatGPT

    Quote Originally Posted by Niya View Post
    Here's the thing though, I've rigorously tested the programming capabilities of 3 different iterations of GPT and each successive iteration massively out-performed the capabilities of the previous iteration. From that I could extrapolate how fast AI is evolving and where it's likely going to be in the next year. It may be true today that you will need to be a programmer to use it effectively as you will have to correct it's mistakes but I doubt that will be the case next year. I would not be surprised next year if it stops making mistakes altogether. Eventually, it will get good enough to where even non-programmers would be able to get solid outputs from it.

    I am telling you, AI is evolving rapidly and I do mean rapidly. I have never in my life seen anything like this. AI is making leaps and bounds in timescales that could be measured in months, not years or decades as is typical with technology.

    [EDIT]

    To add:

    That program I made GPT-4 write, out of curiosity I also gave the same prompt to the previous GPT-3.5 iteration just to see how it would perform. It made a tonne of mistakes and did things I explicitly told it not to do. The code was somewhat usable but it was nowhere near what I asked for. GPT-4 only made 3 tiny errors and got me 99% of the way there. The difference between successive iterations of this AI is huge.
    Lucky I'm a year away from retiring
    Please remember next time...elections matter!

  33. #193
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by wes4dbt View Post
    But a lot of things make large leaps in the the beginning. Which makes sense because there are large areas for improvement. Fixing the last 10% can take longer than creating the first 90%.
    This is generally true but I believe AI would be an exception and here's why. I believe that within 10 years AIs will become self-hosting, which is to say they will be able to figure out how to improve themselves and since they can outperform humans in cognitive abilities by order of magnitudes, we would see more rapid improvement, not less. AI is the only technology ever invented by the hand of man that has this potential. I don't think future AIs will have much trouble figuring out that 10% in a 1/100 of the time it would take a team of humans.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  34. #194
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Quote Originally Posted by TysonLPrice View Post
    Lucky I'm a year away from retiring
    We might all be a year away from retiring whether we want to or not
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  35. #195
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: ChatGPT

    While fiction, in "The Expanse" great swathes of humanity ended up unemployed and on the dole ("Basic Assistance").

    That didn't mean that AI took over everything, just a lot of things, and seemed to be pretty darned ubiquitous. How else could it ever be safe to let children run around loose within a hollowed-out moon or asteroid?

    But resentment seemed to be built into the cultures of the welfare class and the manual labor and working classes throughout the system. So much so that AI was never allowed to speak except in rare cases when directed to.

    It wasn't stupid though. I'm reminded of the tiff Naomi Nagata had with the AI of the Rocinante:

    Naomi: "You know I'm an engineer? Show me drive diagnostics and core levels."
    Amos: "What's going on?"
    Naomi: "Oh, I don't know, ask the ship, it seems to know everything."
    Amos: "It sure beats the buckets that we've been on in the past."
    Naomi: "There's nothing to fix."

  36. #196
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: ChatGPT

    For those who don't know the show, Naomi is used to being a useful part of a crew on older beat up space stations, freighter ships, and such held together and pushed beyond design parameters with baling wire and duct tape. The AI there was older, often broken or blind, and mainly devoted to the most critical operations needed to make things work.

  37. #197
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    GPT-4 Really is amazing!

    For a while now I been wanted to write syntax highlighter to post code on the forums similarly to what Elroy does. You can see a sample of how he posts code here. Part of the process would require tokenizing the code to apply the tags. Now I have written tokenizers before but they are tedious as hell to write. Today I just had the brilliant idea of having GPT-4 take care of all that back breaking labor and boy did it really sell itself on usefulness. This is the latest iteration of the code:-
    Code:
    Imports System.Text
    Imports System.Text.RegularExpressions
    Imports System.Collections.Generic
    
    
    'Everything is here was almost entirely by
    'ChatGPT GPT-4
    Public Class SyntaxHighlighter
    
        Public Shared Function Apply(ByVal text As String) As String
            Return WrapTokensWithColorTags(Tokenize(text))
        End Function
    
        Private Shared Function WrapTokensWithColorTags(tokens As String()) As String
            Dim tokenColors As New Dictionary(Of String, String) From {
        {"Keywords", "#A52A2A"},
        {"Types", "#4B0082"},
        {"SingleQuote", "#006400"},
        {"DoubleQuote", "#8B4513"},
        {"Numbers", "#FF0000"}
    }
    
            Dim keywords As New List(Of String)({"As", "For", "Next", "End", "Class",
                                        "Structure", "Dim", "Private", "Public", "Friend",
                                        "Sub", "Function", "Property", "If", "Else", "Implements",
                                        "Inherits", "DirectCast", "CType", "Handles", "Ubound", "Lbound",
                                        "Optional", "ByVal", "ByRef", "Each",
                                        "Continue", "CDec", "CInt", "CLng",
                                        "Cstr", "CBool", "Redim", "Preserve", "True", "False",
                                        "Static", "Shared", "Overloads",
                                        "Of", "From", "Try", "Catch", "Finally", "Do", "While", "When"})
    
            Dim types As New List(Of String)({"Single", "Double", "String",
                                         "Boolean", "Integer", "Long", "Short",
                                         "Byte"})
    
            Dim sb As New StringBuilder()
    
            sb.Append("[CODE]")
            sb.Append("[COLOR=""#000080""]")
    
            For Each token As String In tokens
                Dim color As String = ""
                Dim tokenUpper As String = token.ToUpperInvariant()
                Dim isNumber As Double
    
                token = Regex.Replace(token, "code", "$0", RegexOptions.IgnoreCase)
                token = Regex.Replace(token, "color", "$0", RegexOptions.IgnoreCase)
    
                If keywords.Any(Function(k) k.ToUpperInvariant() = tokenUpper) Then
                    color = tokenColors("Keywords")
                ElseIf types.Any(Function(t) t.ToUpperInvariant() = tokenUpper) Then
                    color = tokenColors("Types")
                ElseIf token.StartsWith("'"c) Then
                    color = tokenColors("SingleQuote")
                ElseIf token.StartsWith(""""c) Then
                    color = tokenColors("DoubleQuote")
                ElseIf Double.TryParse(token, isNumber) Then
                    color = tokenColors("Numbers")
                ElseIf token.StartsWith(vbLf) OrElse token.StartsWith(vbCr) OrElse token.StartsWith(" "c) Then
                    sb.Append(token)
                    Continue For
                End If
    
                If Not String.IsNullOrEmpty(color) Then
                    sb.AppendFormat("[COLOR=""{0}""]{1}[/COLOR]", color, token)
                Else
                    sb.Append(token)
                End If
            Next
    
            sb.Append("[/COLOR]")
            sb.Append("[/CODE]")
    
            Return sb.ToString()
        End Function
    
    
    
        Private Shared Function Tokenize(input As String) As String()
            Dim tokens As New List(Of String)()
            Dim token As New System.Text.StringBuilder()
    
            Dim index As Integer = 0
            While index < input.Length
                Dim ch As Char = input(index)
    
                If Char.IsWhiteSpace(ch) Then
                    AddTokenAndClear(tokens, token)
                    index = HandleWhiteSpace(input, index, tokens)
                ElseIf ch = "'"c Then
                    AddTokenAndClear(tokens, token)
                    index = HandleSingleQuote(input, index, tokens)
                ElseIf ch = """"c Then
                    AddTokenAndClear(tokens, token)
                    index = HandleDoubleQuote(input, index, tokens)
                ElseIf IsAlphaNumeric(ch) OrElse ch = "_"c OrElse (ch = "."c AndAlso token.Length > 0 AndAlso Char.IsDigit(token(token.Length - 1))) Then
                    token.Append(ch)
                    index += 1
                ElseIf IsSpecialCharacter(ch) Then
                    AddTokenAndClear(tokens, token)
                    tokens.Add(ch.ToString())
                    index += 1
                ElseIf ch = vbCr OrElse ch = vbLf Then
                    AddTokenAndClear(tokens, token)
                    index = HandleNewLine(input, index, tokens)
                Else
                    index += 1
                End If
            End While
    
            AddTokenAndClear(tokens, token)
    
            Return tokens.ToArray()
        End Function
    
        Private Shared Sub AddTokenAndClear(tokens As List(Of String), token As System.Text.StringBuilder)
            If token.Length > 0 Then
                tokens.Add(token.ToString())
                token.Clear()
            End If
        End Sub
    
        Private Shared Function HandleWhiteSpace(input As String, index As Integer, tokens As List(Of String)) As Integer
            Dim ws As New System.Text.StringBuilder()
            While index < input.Length AndAlso Char.IsWhiteSpace(input(index))
                ws.Append(input(index))
                index += 1
            End While
            tokens.Add(ws.ToString())
            Return index
        End Function
    
        Private Shared Function HandleSingleQuote(input As String, index As Integer, tokens As List(Of String)) As Integer
            Dim comment As New System.Text.StringBuilder()
            comment.Append(input(index))
            index += 1
            While index < input.Length AndAlso Not (input(index) = vbCr OrElse input(index) = vbLf)
                comment.Append(input(index))
                index += 1
            End While
            tokens.Add(comment.ToString())
            Return index
        End Function
    
        Private Shared Function HandleDoubleQuote(input As String, index As Integer, tokens As List(Of String)) As Integer
            Dim quoted As New System.Text.StringBuilder()
            quoted.Append(input(index))
            index += 1
            While index < input.Length
                Dim ch As Char = input(index)
                If ch = """"c Then
                    quoted.Append(ch)
                    index += 1
                    If index < input.Length AndAlso input(index) = """"c Then
                        quoted.Append(input(index))
                        index += 1
                    Else
                        Exit While
                    End If
                Else
                    quoted.Append(ch)
                    index += 1
                End If
            End While
            tokens.Add(quoted.ToString())
            Return index
        End Function
    
        Private Shared Function HandleNewLine(input As String, index As Integer, tokens As List(Of String)) As Integer
            If index + 1 < input.Length AndAlso input(index) = vbCr AndAlso input(index + 1) = vbLf Then
                tokens.Add(vbCrLf)
                index += 2
            ElseIf input(index) = vbCr OrElse input(index) = vbLf Then
                tokens.Add(input(index).ToString())
                index += 1
            End If
            Return index
        End Function
    
        Private Shared Function IsAlphaNumeric(ch As Char) As Boolean
            Return Char.IsLetterOrDigit(ch)
        End Function
    
        Private Shared Function IsSpecialCharacter(ch As Char) As Boolean
            Return Not (IsAlphaNumeric(ch) OrElse Char.IsWhiteSpace(ch) OrElse ch = "_"c OrElse ch = "'"c OrElse ch = """"c OrElse ch = vbCr OrElse ch = vbLf)
        End Function
    End Class
    
    
    As you can see by the syntax highlighting above, it works. Now this is not the first iteration. In fact, I spent a quite a bit of time tweaking it but here is the kicker, I almost never touched the code myself. My entire process was a cycle of taking the code ChatGPT spit out, testing it, asking it to make refinements and correct bugs, testing it again and repeating that over and over again.

    What I found interesting about GPT-4 is that it never once made a syntax error. In fact, it made very few mistakes over all. There were some tiny bugs here and there but that was mostly due to me not being clear about what I wanted. My mind is so blown right now by how incredibly powerful this thing is. I really don't have the words. I mean just look at all that code. Nothing in that was written by me. The ONLY thing I did was add a few extra keywords to the List(Of String) and I wrote the Apply function. That's it! I did nothing else.

    Here are the two queries I started with. One for the tokenizer:-
    I want you to write a function that takes a String and tokenizes it in VB.Net. This function would take a String as input and return an array of Strings as output.

    The tokenization process should consider each non-alpha numeric character as a single token.

    It should consider whole numbers and mixed numbers like 12.5 as a single tokens.

    It should consider any pair of carriage return and linefeed characters as a single token.

    It should consider any consecutive series of whitespace characters as a single token of one or more whitespace characters.

    It should consider any consecutive series of alphanumeric characters as a single token. The underscore character should also be considered and alpha-numeric character.

    If any single quote character is encountered, the single quote and everything after it up to the first newline character would be considered a single token. The pair of carriage return and linefeed pair should not be included in this token.

    If any double quote character is encountered, the double quote character and everything thing after it until the next lone double quote character is considered one token. Special care needs to be taken for pairs of double quotes that come after a lone double quote character. Pairs of double quote characters between single double quote characters are also just part of the token.

    Here are some examples of tokenization to help you understand:
    [Number = 10] = [Number][ ][=][ ][10]
    [Dim My_Str As String = "Dog ""Cat"" Dog"] = [Dim][ ][My_Str][ ][As][ ]String[ ][=][ ]["Dog ""Cat"" Dog"]
    [Math.Add(12.5,300)] = [Math][.][Add][(][12.5][,][300]

    The string inside the braces on the left hand side of the equal sign represents the input and the contents between each pair of open and closing braces on the right hand side of the equal sign represents each token.

    Here are a few notes about this:
    Do not use Regex for this.
    The function itself could be part of a class.
    The class could contain helper functions.
    Use helper functions to avoid nesting loops within loops. If it becomes necessary to embed a loop within a loop. The inner loop should be implemented as a helper function instead.
    And the other for processing the tokens:-
    I want you to write a function in VB.Net that takes an array of Strings that represent tokens, wrap then in tags, concatenate them and return the result.

    The tags are colour tags. For example, lets say "Cat" is the token, it could become "Cat".

    The colour of the tags depends on the token type. Here are the different token types:

    Keyword tokens: As, For, Next, End, Class, Structure, Dim, Private, Public Friend, Sub, Function, Property, If, Else, Implements, Inherits, DirectCast, CType, Handles

    Operator tokens: +, -, /, *, =, ^, (, )

    Type tokens: Single, Double, String, Boolean, Integer, Long, Short, Byte

    The keyword tokens should have the colour #A52A2A.
    The operator tokens should have the colour #0000FF.
    The type tokens should have the colour #4B0082.

    Tokens that begin with a single quote should be coloured as #006400

    Tokens that begin with a double quotes should be coloured as #8B4513

    Tokens that begin with white space, carriage return or line feed should not be changed and concatenated as is.

    Before returning the final concatenated String, it should itself be wrapped in a colour tag which has the effect of giving the whole text a default colour. That could should be #000080.
    Those two queries got me like 80% of the way there. From there I kept asking it to refactor the code repeatedly until I got something I was satisfied with which was the actual code I posted above.
    Last edited by Niya; Apr 1st, 2023 at 03:20 AM.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  38. #198
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    One last thing. Please note that these lines:-
    Code:
    token = Regex.Replace(token, "code", "$0", RegexOptions.IgnoreCase)
    token = Regex.Replace(token, "color", "$0", RegexOptions.IgnoreCase)
    Are actually this:-
    Code:
    token = Regex.Replace(token, "code", "[noparse]$0[/noparse]", RegexOptions.IgnoreCase)
    token = Regex.Replace(token, "color", "[noparse]$0[/noparse]", RegexOptions.IgnoreCase)
    The noparse tags in the actual code got eliminated by the forums when posting.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

  39. #199
    PowerPoster yereverluvinuncleber's Avatar
    Join Date
    Feb 2014
    Location
    Norfolk UK (inbred)
    Posts
    2,235

    Re: ChatGPT

    If you want to be sure of your professional future with VB6, crippling ChatGPT in this respect would be straightforward. Just start unplugging/DDOS all the VB6 websites around the world starting with this forum and very soon, with regard to VB6, all you might hear from chatGPT would be - "Daisy, daisy, give me yoooouur answerrrrr, dooooooo".

    PS. I suppose those old VB6 resource websites are dropping off one by one in any case, causing, I hope, selective amnesia for AI.
    https://github.com/yereverluvinunclebert

    Skillset: VMS,DOS,Windows Sysadmin from 1985, fault-tolerance, VaxCluster, Alpha,Sparc. DCL,QB,VBDOS- VB6,.NET, PHP,NODE.JS, Graphic Design, Project Manager, CMS, Quad Electronics. classic cars & m'bikes. Artist in water & oils. Historian.

    By the power invested in me, all the threads I start are battle free zones - no arguing about the benefits of VB6 over .NET here please. Happiness must reign.

  40. #200
    Angel of Code Niya's Avatar
    Join Date
    Nov 2011
    Posts
    8,598

    Re: ChatGPT

    Actually VB6 and VBA programmers are safe for a while. I'll touch on that in a next post.
    Treeview with NodeAdded/NodesRemoved events | BlinkLabel control | Calculate Permutations | Object Enums | ComboBox with centered items | .Net Internals article(not mine) | Wizard Control | Understanding Multi-Threading | Simple file compression | Demon Arena

    Copy/move files using Windows Shell | I'm not wanted

    C++ programmers will dismiss you as a cretinous simpleton for your inability to keep track of pointers chained 6 levels deep and Java programmers will pillory you for buying into the evils of Microsoft. Meanwhile C# programmers will get paid just a little bit more than you for writing exactly the same code and VB6 programmers will continue to whitter on about "footprints". - FunkyDexter

    There's just no reason to use garbage like InputBox. - jmcilhinney

    The threads I start are Niya and Olaf free zones. No arguing about the benefits of VB6 over .NET here please. Happiness must reign. - yereverluvinuncleber

Page 5 of 10 FirstFirst ... 2345678 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width