Why not learn Rust?
-
Yesterday I asked "Why learn Rust", mostly because I was curious but seeking encouragement while facing the overwhelming existential dread of having to configure my system... Then I distractedly did it while youtubing and.. well, that was easy! :O :D So... why not do it hey?! ;) Here is how: Step 1. Install VS Code (there is a one click installer ask google) Step 2. Install Rust (rls) extension (click on the 4 cubes icon the left, type rust, click install) Step 3. As per RustRls extension description, install Rust tool (google it, there is a one click windows installer for it) => You now have intellisense and mouse hover tips / documentation! :) You are now ready to go, err.. I mean rust! :) I had 0 configuration, just run 3 installers! :) (might have to restart, I did restart since I was also checking windows update) Additional optional step, I want to press F5 and debug! I had to google 2 minute to find out how! :O (phew) Step 4. Install the VS Code extensions "C/C++" (by microsoft) Step 4a. (tricky) I had to find a mysterious hidden setting I can't find again which enable breakpoints everywhere Step 5 create a debug config in your system, Run > Add Configuration, choose "C++ Windows Launch", then edit the \.vscode\launch.json file "program" variable to point to your program Finally Rust documentation [The Rust Programming Language - The Rust Programming Language](https://doc.rust-lang.org/book/title-page.html) You too can become a [Rustacean](https://www.rustacean.net/) now! :)
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
-
Yesterday I asked "Why learn Rust", mostly because I was curious but seeking encouragement while facing the overwhelming existential dread of having to configure my system... Then I distractedly did it while youtubing and.. well, that was easy! :O :D So... why not do it hey?! ;) Here is how: Step 1. Install VS Code (there is a one click installer ask google) Step 2. Install Rust (rls) extension (click on the 4 cubes icon the left, type rust, click install) Step 3. As per RustRls extension description, install Rust tool (google it, there is a one click windows installer for it) => You now have intellisense and mouse hover tips / documentation! :) You are now ready to go, err.. I mean rust! :) I had 0 configuration, just run 3 installers! :) (might have to restart, I did restart since I was also checking windows update) Additional optional step, I want to press F5 and debug! I had to google 2 minute to find out how! :O (phew) Step 4. Install the VS Code extensions "C/C++" (by microsoft) Step 4a. (tricky) I had to find a mysterious hidden setting I can't find again which enable breakpoints everywhere Step 5 create a debug config in your system, Run > Add Configuration, choose "C++ Windows Launch", then edit the \.vscode\launch.json file "program" variable to point to your program Finally Rust documentation [The Rust Programming Language - The Rust Programming Language](https://doc.rust-lang.org/book/title-page.html) You too can become a [Rustacean](https://www.rustacean.net/) now! :)
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
There is also a Visual Studio extension (Beta): Rust - Visual Studio Marketplace[^]
-
There is also a Visual Studio extension (Beta): Rust - Visual Studio Marketplace[^]
Ooooo Nice! :)
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
-
Yesterday I asked "Why learn Rust", mostly because I was curious but seeking encouragement while facing the overwhelming existential dread of having to configure my system... Then I distractedly did it while youtubing and.. well, that was easy! :O :D So... why not do it hey?! ;) Here is how: Step 1. Install VS Code (there is a one click installer ask google) Step 2. Install Rust (rls) extension (click on the 4 cubes icon the left, type rust, click install) Step 3. As per RustRls extension description, install Rust tool (google it, there is a one click windows installer for it) => You now have intellisense and mouse hover tips / documentation! :) You are now ready to go, err.. I mean rust! :) I had 0 configuration, just run 3 installers! :) (might have to restart, I did restart since I was also checking windows update) Additional optional step, I want to press F5 and debug! I had to google 2 minute to find out how! :O (phew) Step 4. Install the VS Code extensions "C/C++" (by microsoft) Step 4a. (tricky) I had to find a mysterious hidden setting I can't find again which enable breakpoints everywhere Step 5 create a debug config in your system, Run > Add Configuration, choose "C++ Windows Launch", then edit the \.vscode\launch.json file "program" variable to point to your program Finally Rust documentation [The Rust Programming Language - The Rust Programming Language](https://doc.rust-lang.org/book/title-page.html) You too can become a [Rustacean](https://www.rustacean.net/) now! :)
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
Your question would be valid for each (open source) programming language. Install some Linux distro, go to the app-center and see how many exist (and how many no longer exist). Languages cobol and go. So, found an answer to your question, besides curiousity?
Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^] "If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
-
Your question would be valid for each (open source) programming language. Install some Linux distro, go to the app-center and see how many exist (and how many no longer exist). Languages cobol and go. So, found an answer to your question, besides curiousity?
Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^] "If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
"why not xxx?" is not really a question, at best a rhetorical question, but really a suggestion to do xxx. Other than that I suppose you mean to ask if I had any ulterior (or posterior ;P ) motive to learn rust? To that I will say yes. Yes I do. Based on assumptions yet to be proven though, so time will tell... If you really want to know, just like Microsoft using the ultimate C++ power to write desktop app, instead of C#, I am trying to see if I could comfortably write ultimate desktop app in Rust. Tried C++ but that was painful. And I don't just mean the duplication of info (.h, .cpp), but the super slow recompile, some interop issue with arrays (I think it was not easy to pas array into C# and then into DirectX, had to make copies...), trouble working with generic, if I remember right, and I forgot what else... I hope it might be painfree with Rust! :) And also DirectX friendly.. (which C# is not) And also.. reflection friendly (or a working alternative, such as the new .NET 5 code generator) In other news I can already see that startup times are faster. While a C# / .NET Core start in a barely perceptible amount of time, a rust console app is already finished before my finger even rise up from enter! :O
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
-
"why not xxx?" is not really a question, at best a rhetorical question, but really a suggestion to do xxx. Other than that I suppose you mean to ask if I had any ulterior (or posterior ;P ) motive to learn rust? To that I will say yes. Yes I do. Based on assumptions yet to be proven though, so time will tell... If you really want to know, just like Microsoft using the ultimate C++ power to write desktop app, instead of C#, I am trying to see if I could comfortably write ultimate desktop app in Rust. Tried C++ but that was painful. And I don't just mean the duplication of info (.h, .cpp), but the super slow recompile, some interop issue with arrays (I think it was not easy to pas array into C# and then into DirectX, had to make copies...), trouble working with generic, if I remember right, and I forgot what else... I hope it might be painfree with Rust! :) And also DirectX friendly.. (which C# is not) And also.. reflection friendly (or a working alternative, such as the new .NET 5 code generator) In other news I can already see that startup times are faster. While a C# / .NET Core start in a barely perceptible amount of time, a rust console app is already finished before my finger even rise up from enter! :O
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
As someone who switched from C# to Rust as primary a language a couple of years ago, I really enjoy writing Rust and don't see myself switch back. Hope you'll like it too!
-
As someone who switched from C# to Rust as primary a language a couple of years ago, I really enjoy writing Rust and don't see myself switch back. Hope you'll like it too!
Thanks man! :) For the time being it will be for fun for my home project.. We shall see... My home projects are more often than not desktop app... so I hope that the WinRT binding is working well enough! Yet? :D
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
-
Yesterday I asked "Why learn Rust", mostly because I was curious but seeking encouragement while facing the overwhelming existential dread of having to configure my system... Then I distractedly did it while youtubing and.. well, that was easy! :O :D So... why not do it hey?! ;) Here is how: Step 1. Install VS Code (there is a one click installer ask google) Step 2. Install Rust (rls) extension (click on the 4 cubes icon the left, type rust, click install) Step 3. As per RustRls extension description, install Rust tool (google it, there is a one click windows installer for it) => You now have intellisense and mouse hover tips / documentation! :) You are now ready to go, err.. I mean rust! :) I had 0 configuration, just run 3 installers! :) (might have to restart, I did restart since I was also checking windows update) Additional optional step, I want to press F5 and debug! I had to google 2 minute to find out how! :O (phew) Step 4. Install the VS Code extensions "C/C++" (by microsoft) Step 4a. (tricky) I had to find a mysterious hidden setting I can't find again which enable breakpoints everywhere Step 5 create a debug config in your system, Run > Add Configuration, choose "C++ Windows Launch", then edit the \.vscode\launch.json file "program" variable to point to your program Finally Rust documentation [The Rust Programming Language - The Rust Programming Language](https://doc.rust-lang.org/book/title-page.html) You too can become a [Rustacean](https://www.rustacean.net/) now! :)
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
That sums up my experience with VS Code. I feel like a total idiot every time I fire it up and can't work out how to build and launch something stupid simple like a webpage or quick app. Visual Studio has spoiled me. Though so has XCode. And Android Studio. It seems I'm truly the only one in the world who gets red in the face swearing at VS Code to just work dammit
cheers Chris Maunder
-
That sums up my experience with VS Code. I feel like a total idiot every time I fire it up and can't work out how to build and launch something stupid simple like a webpage or quick app. Visual Studio has spoiled me. Though so has XCode. And Android Studio. It seems I'm truly the only one in the world who gets red in the face swearing at VS Code to just work dammit
cheers Chris Maunder
Ha well yes, it doesn't just work... But it doesn't take too much work to make a surprising amount of dev tools (unsupported by VS) to work as well! :O :) But yeah, every now and then when I start to use VSCode for a few weeks I start with a how is this thing even working?! :O :laugh:
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
-
"why not xxx?" is not really a question, at best a rhetorical question, but really a suggestion to do xxx. Other than that I suppose you mean to ask if I had any ulterior (or posterior ;P ) motive to learn rust? To that I will say yes. Yes I do. Based on assumptions yet to be proven though, so time will tell... If you really want to know, just like Microsoft using the ultimate C++ power to write desktop app, instead of C#, I am trying to see if I could comfortably write ultimate desktop app in Rust. Tried C++ but that was painful. And I don't just mean the duplication of info (.h, .cpp), but the super slow recompile, some interop issue with arrays (I think it was not easy to pas array into C# and then into DirectX, had to make copies...), trouble working with generic, if I remember right, and I forgot what else... I hope it might be painfree with Rust! :) And also DirectX friendly.. (which C# is not) And also.. reflection friendly (or a working alternative, such as the new .NET 5 code generator) In other news I can already see that startup times are faster. While a C# / .NET Core start in a barely perceptible amount of time, a rust console app is already finished before my finger even rise up from enter! :O
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
I never found C++ to be particularly painful. The thing about C# is it stores arrays in different memory order than C++ for multidimensional arrays, IIRC so yes, making them work together would require a copy. A better way to do it (and I'd probably have to see how feasible this is as I haven't tried DirectX coding in years) though would be to let the unmanaged code pass you arrays in different memory order, and in the C# code just account for it. Your indices would need to be translated. Easiest thing i can think of is to just map everything as a 1d "flat" array using interop, and then do the math of of y*totalX+x or vice versa to translate.
Real programmers use butterflies
-
I never found C++ to be particularly painful. The thing about C# is it stores arrays in different memory order than C++ for multidimensional arrays, IIRC so yes, making them work together would require a copy. A better way to do it (and I'd probably have to see how feasible this is as I haven't tried DirectX coding in years) though would be to let the unmanaged code pass you arrays in different memory order, and in the C# code just account for it. Your indices would need to be translated. Easiest thing i can think of is to just map everything as a 1d "flat" array using interop, and then do the math of of y*totalX+x or vice versa to translate.
Real programmers use butterflies
compilation is superslow, intellisense doesn't work very well... when I do C++ these days, I mostly C++/CX or C++/WinRT with a dash of either DirectX or, obviously, WinAPI. I cant remember very well, it has been a while. But many time I keenly thought to myself, now I am switching to C++. And I always give up. Not because of the syntax, but because the development environment in C++ seems less comfortable than in C#. Bear in mind that most my toy app at home are GUI app... Maybe simple console app or service app are fin in C++, but I always found GUI app development in C++ much more tedious than it should... And also, since I want perfect C# interop, that adds extra tediousness...
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
-
compilation is superslow, intellisense doesn't work very well... when I do C++ these days, I mostly C++/CX or C++/WinRT with a dash of either DirectX or, obviously, WinAPI. I cant remember very well, it has been a while. But many time I keenly thought to myself, now I am switching to C++. And I always give up. Not because of the syntax, but because the development environment in C++ seems less comfortable than in C#. Bear in mind that most my toy app at home are GUI app... Maybe simple console app or service app are fin in C++, but I always found GUI app development in C++ much more tedious than it should... And also, since I want perfect C# interop, that adds extra tediousness...
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
I feel the same way you do about GUI dev in C++. I've learned to hack my way through MFC but it's horrible. WTL is better but has crap for designer support.
Real programmers use butterflies