Hello,
My name is Kirk, I have recently discovered Nim while searching for a programming language to learn. I have been somewhat of a hobbyist programmer in the past dabbling in languages like Perl, Python and Ruby.
While it has been a few years since I last written any code, running through the tutorial provided for Nim has refreshed my memory of the fundamental concepts once again.
I hope that I can provide some sort of contribution in the near future.
Kirk
Welcome Kirk!
Feel free to ask questions here. Please note that the manual is often as useful as the tutorials. ;-)
Hello,
Many forums have a long running thread for introductions. So I am joining this thread. Hopefully others will continue in the future.
I just wanted to say Hi and introduce my self.
I am just learning Nim, but I have decided to make a commitment. I have read the tutorials and bought the book and am working my way through it. I have also joined the Bountysource where I could afford.
I am not a professional developer, but would like to attempt some serious projects. One of the things that attracts me to Nim is the natural ability to interface with both C and C++. I have used lots of things which do okay with C, but C++ always required a C wrapper around the C++ which made it either difficult to near impossible. I have projects where I will need that ability.
I have used Python casually for 20+ years. I have also been a long time user of Squeak and Pharo. I have known Göran Krampe for a long time before he was Göran Krampe. :)
As a long time casual user of Python for a long time, I find the syntax of Nim to be comfortable. I think it is in some ways nicer than Python, but I do have to get used to the static typing. As a long time user of Squeak and Pharo, like Göran, I do miss the live environment. I would dearly love to see some things that direction in the future. Pharo has been my language and environment of choice the last several years.
I am enjoying learning Nim. I like the features it provides. I like the efficiency and I do believe it makes for a nice balance between efficiency and elegance.
I hope to be able to contribute back to the community when I am up to speed on using Nim.
Thanks for this language and the reasonably unique set of features it has.
Jimmie
Hey Jimmie!
Nice to see you here :) And I agree with what you wrote of course. And for the "liveliness", perhaps Spry can be of service to you eventually! Hope you and your family is well.
regards, Göran
Hello Göran,
I have liked what I read about Spry. I look forward to giving it a try. I plan on doing so once I get up to speed and am comfortable with Nim. Hopefully I can join you on that journey. :)
The family is doing well. I hope yours is as well.
Jimmie
Well I will continue with the intros in this thread as well :)
I am also quite new to Nim, and how I stumbled upon it I will get to shortly. I would consider myself a hobbyist game developer, and have used quite a few languages in my time doing so: Python, Java, C#, Haxe, Lua. I hate Java, for various reasons, likely because of university. I am also what many would consider as FAR-from-the-metal as could be, as I seem to gravitate to higher level languages. For the past few years Ive really enjoyed Lua, and have been using it for an ORPG space 4x game (like the old graphical muds, just a bit more polished). So, I went back to good ole google to find another high-level language, but this time, maybe statically typed.
Then Nim showed up, looking python-esque, with gc, and compiled to c; and with a game engine to boot! I installed it on my laptop along with FRAG, and got a window on the screen with relatively few lines of code, and was hooked. I decided to put it on my main pc and a few headaches in getting it installed (thanks again dom), its been a terrific transition. I still have a long way to go and MANY bad habits from dynamically typed languages to break. I am in the process of converting some of my previous projects from Lua and Haxe to Nim, should be a great teaching opportunity, the OOP is going to be the biggest obstacle for me, as I remember Python, but like Lua, Nim gives you some flexibility in how you approach OOP too it seems.
Hi Nim'ers :)
I was introduced to Pascal in 1986 in high school, and it was my first language, not counting the very few lines of Commodore Basic I had under my programming belt before that.
Then, a long pause, and I got into programming again in 1997. This time Visual Basic, very quickly followed by Delphi! :D
I absolutely loved Object Pascal and Delphi, but then I got into graphics programming (mode 13h, DirectX, ...) and I learned C++.
Now, after years of C++, I have grown tired of it, and have gravitated to C.
I have dabbled in Lisp/Racket, and am a proficient PHP programmer.
I have tried Python, and it is neat, but I like my languages statically typed.
So, after looking into new and up and coming "better C's" like Odin and Jai, I then found Nim.
And it is perfect. :)
So now, I divide my time between Free Pascal (Lazarus), proper C, PHP and Nim. (With the occasional fling of C++ and perhaps a bit of retro C64 programming (assembly/Basic)).
Other relevant tidbits: I was a moderator at the Ogre3D community for more than 5 years, and am currently a moderator at the Yii Framework community forum.
Neither Go, Rust, Ruby, Java or C# has ever clicked for me.
So here I am :)
So, after looking into new and up and coming "better C's" like Odin and Jai, I then found Nim.
I will never say anything negative about Jai (except that it's not actually available). A friend of mine watches all the Jai videos. I'm glad to see someone else recognizes brilliance.
But Nim fits an important niche: Migration paths from C++ and Python. Because of the easy interop, you don't have to re-write an entire program all at once. It's amazing how many devs don't understand why that matters.
If I were coding a giant program from scratch, there are lots of languages that I would consider, including Nim. But I'm not a Nim zealot. I use it because it's productive (Python-like syntax), fast (to compile and to run), conceptually simple, and gives me a way to migrate co-workers' code to a modern language gradually.
The "problem" with Odin and Jai is mainly that they are both in the initial stages of development and still taking shape, so we don't know how they will turn out..
Also, they say that it takes 10 years or so for a language to become mature enough to be really useful, so considering that Nim is currently 9 years old (2008 - 2017) ...
It is important to me that whatever language I am about to choose, that it has proven itself, and has some kind of community built around it. It doesn't have to be huge, though.