I need a new language

Talk about computers, hardware, applications, and consumer electronics.
User avatar
Walking on Broken Glass
Posts: 232
Joined: 2008.10.19 (22:19)
NUMA Profile: http://nmaps.net/user/%5D%7BNO3
Location: somewhere abusing a period key...

Postby //Zander » 2009.02.02 (09:22)

I am currently using Macs, so I want to learn a new, free, powerful, and hopefully crossplatform language.
I am sick of this flash bullcrap. I just started getting good at AS2 and AS3 came out, the sintax was screwed to high heaven, I would have had to learn it all over again...
any suggestions?
Image

User avatar
Global Mod
Global Mod
Posts: 1416
Joined: 2008.09.26 (05:35)
NUMA Profile: http://nmaps.net/user/scythe33
MBTI Type: ENTP
Location: 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0

Postby scythe » 2009.02.02 (10:07)

Lua or Python. PyGame is a great quick-and-dirty game development framework, as I recall, and Lua was used for World of Warcraft and even Crysis.
As soon as we wish to be happier, we are no longer happy.

User avatar
Damn You're Fine
Posts: 384
Joined: 2008.09.19 (01:47)
NUMA Profile: http://nmaps.net/user/littleviking001
MBTI Type: INTP
Location: Southern California
Contact:

Postby LittleViking » 2009.02.02 (10:12)

I think Python is all the rage these days. It's a very quick language to write in. Any time I need a little automated task done - parsing XML, scraping a web page for data, running some calculations, whatever it be - I can open up Python, write ten lines of code and be done. If you want more, Python has a boatload of built-in and third-party packages to look at. Tkinter and wxPython for writing GUI applications, Django or others for websites, Twisted for various network protocols (IRC, AIM, HTTP, many more), pySerial to interface with peripherals, just to name a very few.

Ruby has a similar syntax to Python and has the popular Ruby on Rails framework for web apps. I haven't used Ruby much, so I don't know what other pros and cons it has.

As far as web goes, though, I find PHP easier to pick up for that. If you have any interest in web work, PHP/CSS/(X)HTML/MySQL is the combo I'd recommend. I actually taught myself PHP as I was making the Real N comic page, and in a matter of hours, I went from zero experience to having a fully functional webpage. So it's easy to learn and quick to debug.

Or you could learn Actionscript 3. If you're looking forward to a web design career, Actionscript is only getting more popular as time goes on. Clients love Flash.

Edit: I'm looking at a bit of Lua code. It has the bizarre but pretty cool feature of allowing arrays to double as objects when they're prepared right.
Image
The last Metroid is in captivity. The galaxy is at peace...

User avatar
Walking on Broken Glass
Posts: 232
Joined: 2008.10.19 (22:19)
NUMA Profile: http://nmaps.net/user/%5D%7BNO3
Location: somewhere abusing a period key...

Postby //Zander » 2009.02.02 (10:21)

Nah, I want to make some gutsy programs.
like I want to remake N-artismic, but in something better than flash.
I have a book on python/pygame. just I have had tons of problems getting it to run on my computer. I think lua would be kinda cool. they use that in garry's mod for hl2 but I've never used gmod, so dont ask me about it. I'll have a look at them both.

EDIT in flash all arrays were objects... was lua made to run on mac, or just ported?
Image

User avatar
Damn You're Fine
Posts: 384
Joined: 2008.09.19 (01:47)
NUMA Profile: http://nmaps.net/user/littleviking001
MBTI Type: INTP
Location: Southern California
Contact:

Postby LittleViking » 2009.02.02 (10:42)

Sounds like Flash and Lua are reversed then. In Actionscript, I think everything was an object, so arrays were naturally objects. In Lua, _nothing_ is an object. You make an "object" by making an array and setting its values to the values and methods an object would have.

Also, every language mentioned here is multi-platform by nature. In most cases, they were written in C and had native versions compiled on each OS. So they'll all run just as well on Mac, PC or Linux. (I've even run into a few Python packages that will run on Linux/OSX but not Windows.)
Image
The last Metroid is in captivity. The galaxy is at peace...

User avatar
Bayking
Posts: 315
Joined: 2008.10.01 (20:26)
NUMA Profile: http://nmaps.net/user/exuberance
Location: Guelph, Ontario, Canada

Postby Exüberance » 2009.02.02 (19:30)

Edit: I'm looking at a bit of Lua code. It has the bizarre but pretty cool feature of allowing arrays to double as objects when they're prepared right.
So does Actionscript 2. You can use non-numerical indexes and access them the same way you do objects (using either obj["x"] or obj.x). Being able to use the ["<variable name>"] is nice for objects since you can create and acess variables with dynamically-created names. It's not something you'd use all the time, but at times can be very usefull. They also both behave the same way in terms of memory pointers. But I belive most array functions stop working when you use non-numeric indexes, and I would assume that changes the memory model to an object, but allows you to pretend it's still an array.

EDIT: oh, I missed your previous post by a few mins. Nevermind thenl

Also, I've messed around with some LUA while modding WoW addons. It has some strange syntax stuff (like using % before parents or #s in strings (why?), but using / before another / in strings. Not sure what that's about.) Of course, I only know what I've picked up from other people's code while modding it; I haven't made anything myself from scratch in LUA, so I don't know much about it. It seems like a pretty powerfull language though.
ExüberNewsFeed: Exuberance is mostly <AFF> (Away From Forums) for a while, though I may still participate in epic contests/threads. When I return, I shall bring several comic updates (enough to finish season 1) and hopefully 1 or 2 games- at least one of which is N-related
Comic Activity-O-Meter: (how often I'm updating my comic)
(Click here to see what each level and half-level means in terms of updates per time period)

NOTE: If I just add a bunch of comics in one day, but plan on going back to normal after that, I probably won't update the status.
+ Dead: Canceled. Done. Maybe you'll get a random comic like once a year, but it's pretty much done.
- Zombie (Dead/Comatose): The comic is probably done regular updates forever, but I'll probably still add something once in a blue moon. It's still POSSIBLE, that I'll raise the status up, but not very likely. Maybe I'll have a comicplosion for like a week, then go back to being dead
+ Comatose: Complete stand-by. No (or very few) updates for some amount of time, but the comic's far from being over
- <AFK> (Comatose/Loitering): Stand-by, but you might possibly count on a few updates once and a while. Again, this is temporary
+ Loitering: Like comatose, but for short amount of times.
- Turtling (Loitering/Semi-Active): Really slooooww updates
+ Semi-Active: One every 2 weeks...ish?
- Quasi-Active (Semi-Active/Active): Averaging about 2 comics every 3 weeks
+ Active: Loosely defined status, but about a weekly update
- Over-Active (Active/Power-leveling): About 2 comics a week
+ Power-leveling: About 3 comics a week. Possible a schedule, possibly not
- Über-Epic (Power-leveling/COMICPLOSION!!): In some cases, this may actually be mean updates more frequently than COMICPLOSION!!, but I'm defining this level as a non-organized comic rush, kind of like a few days after my comic started
+ COMICPLOSION!!: Daily updates for a minimum of 5 days (since the daily updates started. It remains at this status until the 5, 7, whatever days are done)

Image
"Science without religion is lame. Religion without science is blind." ~Albert Einstein
My N+ Vector Sprite Sheet ::: My Caption Contest ::: My Comic :::Puzzles of the Exuberant ::: DEFEND YOUR NINJA: THE FLASH GAME (Release Date TBA)
Image
Exüberance on WoW
Image
Maps in the Fernat Epic (so far): (meh, let's put this in a spoiler too. My sig's gettin too big. I'm such a packrat :p)

Nmaps.netNmaps.net


User avatar
Retrofuturist
Posts: 3131
Joined: 2008.09.19 (06:55)
MBTI Type: ENTP
Location: California, USA
Contact:

Postby t̷s͢uk̕a͡t͜ư » 2009.02.02 (22:49)

I'll give an emphatic second to LV's suggestion of Python. If it doesn't work on your system, it's worth finding out why and fixing it because Python is worth far more than that inconvenience.
[spoiler="you know i always joked that it would be scary as hell to run into DMX in a dark ally, but secretly when i say 'DMX' i really mean 'Tsukatu'." -kai]"... and when i say 'scary as hell' i really mean 'tight pink shirt'." -kai[/spoiler][/i]
spoiler

Image


User avatar
Global Mod
Global Mod
Posts: 1416
Joined: 2008.09.26 (05:35)
NUMA Profile: http://nmaps.net/user/scythe33
MBTI Type: ENTP
Location: 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0

Postby scythe » 2009.02.02 (23:04)

//Zander wrote:Nah, I want to make some gutsy programs.
like I want to remake N-artismic, but in something better than flash.
I have a book on python/pygame. just I have had tons of problems getting it to run on my computer. I think lua would be kinda cool. they use that in garry's mod for hl2 but I've never used gmod, so dont ask me about it. I'll have a look at them both.

EDIT in flash all arrays were objects... was lua made to run on mac, or just ported?
Lua is more of a functional programming language (think Lisp). I'm betting ActionScript is more object-oriented, like Smalltalk.
However, you have a book on Python, and you're not currently working at Blizzard, so I'm thirding the Tsukatu/LV python recommendation. It's an awesome language.

Edit: Oh, also, not Ruby, and especially not Ruby on Rails.
As soon as we wish to be happier, we are no longer happy.

Ice Cold
Posts: 202
Joined: 2008.09.26 (11:49)
Location: Australia
Contact:

Postby mattk210 » 2009.02.03 (08:55)

I started python recently and I can also strongly recommend it for easy and logical programming. It almost feels like cheating not having to type variables (although I imagine there's a speed cost)

However I think flash and AS3 is second to none for ease of graphics programming. The new AS3 syntax is mostly stricter AS2 with a few more intuitive features, I really think it's much better. I don't know what is N-artismic but it sounds graphical. Also flash has the advantage of being well supported online, which is much more convenient than downloading a program.

The big stuff like C in my experience should only be touched if you need to squeeze high levels of optimization for some CPU intensive calculations -- it can be time-consuming to program in.

User avatar
Bayking
Posts: 315
Joined: 2008.10.01 (20:26)
NUMA Profile: http://nmaps.net/user/exuberance
Location: Guelph, Ontario, Canada

Postby Exüberance » 2009.02.03 (22:19)

Does Python have it's own garbage collection or do you handle memory manually as you would in C?
ExüberNewsFeed: Exuberance is mostly <AFF> (Away From Forums) for a while, though I may still participate in epic contests/threads. When I return, I shall bring several comic updates (enough to finish season 1) and hopefully 1 or 2 games- at least one of which is N-related
Comic Activity-O-Meter: (how often I'm updating my comic)
(Click here to see what each level and half-level means in terms of updates per time period)

NOTE: If I just add a bunch of comics in one day, but plan on going back to normal after that, I probably won't update the status.
+ Dead: Canceled. Done. Maybe you'll get a random comic like once a year, but it's pretty much done.
- Zombie (Dead/Comatose): The comic is probably done regular updates forever, but I'll probably still add something once in a blue moon. It's still POSSIBLE, that I'll raise the status up, but not very likely. Maybe I'll have a comicplosion for like a week, then go back to being dead
+ Comatose: Complete stand-by. No (or very few) updates for some amount of time, but the comic's far from being over
- <AFK> (Comatose/Loitering): Stand-by, but you might possibly count on a few updates once and a while. Again, this is temporary
+ Loitering: Like comatose, but for short amount of times.
- Turtling (Loitering/Semi-Active): Really slooooww updates
+ Semi-Active: One every 2 weeks...ish?
- Quasi-Active (Semi-Active/Active): Averaging about 2 comics every 3 weeks
+ Active: Loosely defined status, but about a weekly update
- Over-Active (Active/Power-leveling): About 2 comics a week
+ Power-leveling: About 3 comics a week. Possible a schedule, possibly not
- Über-Epic (Power-leveling/COMICPLOSION!!): In some cases, this may actually be mean updates more frequently than COMICPLOSION!!, but I'm defining this level as a non-organized comic rush, kind of like a few days after my comic started
+ COMICPLOSION!!: Daily updates for a minimum of 5 days (since the daily updates started. It remains at this status until the 5, 7, whatever days are done)

Image
"Science without religion is lame. Religion without science is blind." ~Albert Einstein
My N+ Vector Sprite Sheet ::: My Caption Contest ::: My Comic :::Puzzles of the Exuberant ::: DEFEND YOUR NINJA: THE FLASH GAME (Release Date TBA)
Image
Exüberance on WoW
Image
Maps in the Fernat Epic (so far): (meh, let's put this in a spoiler too. My sig's gettin too big. I'm such a packrat :p)

Nmaps.netNmaps.net


User avatar
Damn You're Fine
Posts: 384
Joined: 2008.09.19 (01:47)
NUMA Profile: http://nmaps.net/user/littleviking001
MBTI Type: INTP
Location: Southern California
Contact:

Postby LittleViking » 2009.02.03 (23:57)

Exüberance wrote:Does Python have it's own garbage collection or do you handle memory manually as you would in C?
Python does its own garbage collecting, you don't have to deal with it manually.
Image
The last Metroid is in captivity. The galaxy is at peace...

User avatar
Retrofuturist
Posts: 3131
Joined: 2008.09.19 (06:55)
MBTI Type: ENTP
Location: California, USA
Contact:

Postby t̷s͢uk̕a͡t͜ư » 2009.02.04 (08:54)

Exüberance wrote:Does Python have it's own garbage collection or do you handle memory manually as you would in C?
Python will wipe your ass for you, and pick up your kids from school.
[spoiler="you know i always joked that it would be scary as hell to run into DMX in a dark ally, but secretly when i say 'DMX' i really mean 'Tsukatu'." -kai]"... and when i say 'scary as hell' i really mean 'tight pink shirt'." -kai[/spoiler][/i]
spoiler

Image



Who is online

Users browsing this forum: No registered users and 5 guests