Still hoping Microsoft will open source VB 6. It indeed was a language for the masses back then. There would have been no need for Python syntax or Golang with Visual Basic's simplicity
in a windows only world.
111–120 of 292 posts
Still hoping Microsoft will open source VB 6. It indeed was a language for the masses back then. There would have been no need for Python syntax or Golang with Visual Basic's simplicity
in a windows only world.
The adblocker doorslammed me. Here's the text of the article. Microsoft said this week that it will support Visual Basic on .NET 5.0 but will no longer add new features or evolve the language. “Starting with .NET 5, Visual Basic will support Class Library, Console, Windows Forms, WPF, Worker Service, [and] ASP.NET Core Web API … to provide a good path forward for the existing VB customer who want [sic] to migrate the…
At the bottom you can click “move on to site.”
Earlier quoted context omitted.
I used to think this too, but everything you can do in VB6 you can do in powershell, and do it better. Try/Catch, windows forms.. literally anything you can think of. You can even mix powershell and C# together in the same script. Once I realized I had a better version of everything I wanted, it became my new favorite.
>but everything you can do in VB6 you can do in powershell Excel modules? OK not quite exactly the same but close. I wrote a finite capacity planner system for a factory a fair few years ago in Excel to replace a huge number of Lotus 1-2-3 thingies with a vast amount of copy n paste from text screens and random sheets and what not. I started with an automated forecast. We used an (memory may be fading) exponential fi…
You don't even need Excel!
Earlier quoted context omitted.
> great learning language E.W.Dijkstra would disagree: "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
When Dijkstra wrote that quote in 1975 he didn't had Visual Basic in mind, he was thinking the much older BASIC dialects that used line numbers and GOTOs for flow control. Dijkstra was trying to promote structured programming languages like Algol and Visual Basic is based on the QBasic dialect which has full structured programming features like WHILE and FOR loops, IF that would work with compound statements (that is…
Earlier quoted context omitted.
> great learning language E.W.Dijkstra would disagree: "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
to me, that was always a great example of the difference between IT and CS. I totally understand how someone trained in VB was "mutilated" for CS. Because the priorities for CS coding are totally different than for commercial coding. But from an IT perspective the point of programming is to be profitable, not perfect. VB allowed people to write profitable programs quickly. It was a fantastic environment if all you wa…
The quote isn't about VB; its from 1975, VB was released in 1991.
Still hoping Microsoft will open source VB 6. It indeed was a language for the masses back then. There would have been no need for Python syntax or Golang with Visual Basic's simplicity
Earlier quoted context omitted.
When Dijkstra wrote that quote in 1975 he didn't had Visual Basic in mind, he was thinking the much older BASIC dialects that used line numbers and GOTOs for flow control. Dijkstra was trying to promote structured programming languages like Algol and Visual Basic is based on the QBasic dialect which has full structured programming features like WHILE and FOR loops, IF that would work with compound statements (that is…
GOTO for flow control is not that bad, it's just a tail call after all. The real damage is things like having everything be global variables. But part of that was a technical limitation, as things like "proper" call stacks and reentrant code as the default still had plenty of overhead, and even FORTRAN didn't support them.
10 REM Grab input
20 GOSUB 1000
30 IF VALUE=BAR THEN GOTO 100
40 IF VALUE=BAZ THEN GOTO 200
50 IF VALUE=BLA THEN GOTO 300
60 GOTO 20
100 REM Bar stuff
110 blahblah
199 RESUME
200 REM Baz stuff
210 blahblah
299 RESUME
300 REM Bla stuff
310 blahblah
399 RESUME
1000 REM Code that grabs input
1010 blahblah
1100 RESUME
Or just here is some actual BASIC game:https://github.com/peteri/ClassicBasic/blob/master/Games/kin...
Note that this is a bit more readable than what people worked with since now you have syntax highlighting.
I'm not sure where tail calls enter in the picture... there wasn't even support for functions, at best you had GOSUB/RESUME which was essentially assembly-like CALL/RET.
Earlier quoted context omitted.
Is it widespread? I've never seen anyone else using powershell 'in the wild', admittedly for the last 3 years I've mainly worked alone, but I still see people using CMD scripts. I usually get frustrated with it and bash out a quick cmdlet instead.
sysadmins who are fully invested in the MS ecosystem do use it a lot. People doing cross-platform work, don’t. In terms of wider adoption, it suffered by maturing at a time when a lot of people had moved on to more powerful devop solutions. And of course, being MS tech (although technically it was acquired), it carries a stigma. I just found it un-intuitive, ugly, and verbose. Compared to my beloved python it looks r…
That is so sad. "There’s something deeply right about how list indexing and function application are the same operation". That is a quote from a recent submission about K ( https://news.ycombinator.com/item?id=22504106 ), and that is a perfect example of how I usually get VB nostalgia attacks: somebody talks about a thing in other language they consider amazing implying that that thing is unique for that language des…
I'm pretty sure that there are a few languages where array indexing is basically calling a function that returns a reference to the cell you're accessing.
Earlier quoted context omitted.
GOTO for flow control is not that bad, it's just a tail call after all. The real damage is things like having everything be global variables. But part of that was a technical limitation, as things like "proper" call stacks and reentrant code as the default still had plenty of overhead, and even FORTRAN didn't support them.
I'm not sure what you have in mind but in the 1975 dialects of BASIC the code was something like 10 REM Grab input 20 GOSUB 1000 30 IF VALUE=BAR THEN GOTO 100 40 IF VALUE=BAZ THEN GOTO 200 50 IF VALUE=BLA THEN GOTO 300 60 GOTO 20 100 REM Bar stuff 110 blahblah 199 RESUME 200 REM Baz stuff 210 blahblah 299 RESUME 300 REM Bla stuff 310 blahblah 399 RESUME 1000 REM Code that grabs input 1010 blahblah 1100 RESUME Or just…
GOTO essentially involves setting the continuation of your program to something other than the following instruction(s). That's what a tail call does. No "functions" involved except as a high-level description.