3ICE and JASS and Programming in general.
Forum rules
• If you are posting source code, proper indenting and comments will improve the readability.
• If you are posting source code, proper indenting and comments will improve the readability.
- 3ICE
- Admin
- Posts: 2631
- Joined: Sat Mar 01, 2008 11:34 pm
- Realm: Europe
- Account: 3ICE
- Clan: 3ICE
- Location: Hungary
- Contact:
3ICE and JASS and Programming in general.
I learned basic JASS in one hour. It is not hard. It was my first programming language too, so you can't say I had any advantage. (Previous experience helps when learning new languages.) (Actually HTML was my first, but I only knew <i>, <b>, <u> and some more basic tags back then, so it doesn't count. And HTML is not a real programming language, its just markup.)
Knowing JASS so well helped me learn over 20 additional programming languages very quickly. I am still learning new ones, and one day I will switch to Assembly (or ASM for short). I believe every programming language is different, and each and every one has it's own purpose, something they are the best at. It is a generally accepted fact that every task has a best suited programming language for it's solution.
One of the first languages I learned after JASS is vJASS, which I don't use, but can read. It is useful to know vJASS when so many people develop spells and systems in it. Lots of hard-to-do tasks in JASS are simplified in vJASS. Many programming concepts missing from JASS were added through vJASS. And I use tools developed for vJASS when writing JASS code, so that alone is enough reason to know vJASS.
My dream is programming directly in machine code by creating exe files in a hex editor, but I would be alone then, as even the most brave programmers need to use compilers. People say it is a waste of time to use low level programming languages, but I am willing to pay that price for two things: total control over the computer and perfectly optimized code.
Another dream of mine is merging every programming language into one superprogramming language. Many people have tried this, and nobody succeeded so far. I am not going to try it until much later. I don't think I have enough experience now. I will keep learning.
A third dream is writing programs that can run outside of Windows and even DOS, directly at Operating System level. The main problem here is that one CPU brand doesn't understand code written for an other CPU brand. Instruction Set Architectures differ greatly.
Knowing JASS so well helped me learn over 20 additional programming languages very quickly. I am still learning new ones, and one day I will switch to Assembly (or ASM for short). I believe every programming language is different, and each and every one has it's own purpose, something they are the best at. It is a generally accepted fact that every task has a best suited programming language for it's solution.
One of the first languages I learned after JASS is vJASS, which I don't use, but can read. It is useful to know vJASS when so many people develop spells and systems in it. Lots of hard-to-do tasks in JASS are simplified in vJASS. Many programming concepts missing from JASS were added through vJASS. And I use tools developed for vJASS when writing JASS code, so that alone is enough reason to know vJASS.
My dream is programming directly in machine code by creating exe files in a hex editor, but I would be alone then, as even the most brave programmers need to use compilers. People say it is a waste of time to use low level programming languages, but I am willing to pay that price for two things: total control over the computer and perfectly optimized code.
Another dream of mine is merging every programming language into one superprogramming language. Many people have tried this, and nobody succeeded so far. I am not going to try it until much later. I don't think I have enough experience now. I will keep learning.
A third dream is writing programs that can run outside of Windows and even DOS, directly at Operating System level. The main problem here is that one CPU brand doesn't understand code written for an other CPU brand. Instruction Set Architectures differ greatly.
-
- Posts: 113
- Joined: Fri Apr 13, 2012 2:48 pm
- Realm: US East
- Account: Darktiger138
- Clan: THP
- Location: New Zealand
Re: 3ICE and JASS and Programming in general.
You've set yourself some..... hefty goals there. I just want to learn programming and get good at it, that'd make me happy for the time being ![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Oh and its not really possible to make all programming languages into 1 since people are making different variations every now and then.
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Oh and its not really possible to make all programming languages into 1 since people are making different variations every now and then.
Spoiler:
- 3ICE
- Admin
- Posts: 2631
- Joined: Sat Mar 01, 2008 11:34 pm
- Realm: Europe
- Account: 3ICE
- Clan: 3ICE
- Location: Hungary
- Contact:
Re: 3ICE and JASS and Programming in general.
"all" as in the ones I like.
But you are right, it would be quite hard to merge functional programming languages such as Haskell with object oriented ones like C#. (Because functional programming languages don't allow variables to change.) But but it could be done, if we dropped the whole "variables may not change" rule of Haskell. Yes, I'd quite like that.
You can compress a 20 lines long C# code into 1 line of Haskell, all the while improving your code's readability. (To programmers that understand Haskell, that is...)
But you are right, it would be quite hard to merge functional programming languages such as Haskell with object oriented ones like C#. (Because functional programming languages don't allow variables to change.) But but it could be done, if we dropped the whole "variables may not change" rule of Haskell. Yes, I'd quite like that.
You can compress a 20 lines long C# code into 1 line of Haskell, all the while improving your code's readability. (To programmers that understand Haskell, that is...)
-
- Posts: 113
- Joined: Fri Apr 13, 2012 2:48 pm
- Realm: US East
- Account: Darktiger138
- Clan: THP
- Location: New Zealand
Re: 3ICE and JASS and Programming in general.
Variables may not change? What is this madness? Of course they can change, that's the point of having variables....
Spoiler:
- 3ICE
- Admin
- Posts: 2631
- Joined: Sat Mar 01, 2008 11:34 pm
- Realm: Europe
- Account: 3ICE
- Clan: 3ICE
- Location: Hungary
- Contact:
Re: 3ICE and JASS and Programming in general.
You have a wonderful journey ahead of yourself. Traverse the paths of programming with pride, young one!
Master the basics of Haskell.
Master the basics of Haskell.
-
- Posts: 113
- Joined: Fri Apr 13, 2012 2:48 pm
- Realm: US East
- Account: Darktiger138
- Clan: THP
- Location: New Zealand
Re: 3ICE and JASS and Programming in general.
First I shall master the basics of Python, horrible spiteful language.
Spoiler:
-
- Posts: 113
- Joined: Fri Apr 13, 2012 2:48 pm
- Realm: US East
- Account: Darktiger138
- Clan: THP
- Location: New Zealand
Re: 3ICE and JASS and Programming in general.
I dont, well I dont like the compiler that I have to use, it has a few errors that are quite annoying, like sometimes when you try to start up IDLE it comes up with 'Sub process can't be found' which makes me have to restart the computer, then other times it just fails to read my code properly then I spend ages trying to find out whats wrong, I run the code again exactly how it was and it runs perfectly fine RAWR!
Spoiler:
- 3ICE
- Admin
- Posts: 2631
- Joined: Sat Mar 01, 2008 11:34 pm
- Realm: Europe
- Account: 3ICE
- Clan: 3ICE
- Location: Hungary
- Contact:
Re: 3ICE and JASS and Programming in general.
Who forces you to use IDLE? I use Notepad++ with the command line "python.exe" compiler.
-
- Posts: 113
- Joined: Fri Apr 13, 2012 2:48 pm
- Realm: US East
- Account: Darktiger138
- Clan: THP
- Location: New Zealand
Who is online
Users browsing this forum: No registered users and 235 guests