Hello Guest, please login or register.
Did you miss your activation email?
Login with username, password and session length.

Pages: [1]   Go Down

Author Topic: Looking for a programming language  (Read 2417 times)

0 Members and 1 Guest are viewing this topic.
Looking for a programming language
« on: July 17, 2007, 12:12:40 pm »
  • *
  • Reputation: +10/-0
  • Offline Offline
  • Gender: Female
  • Posts: 1469
Ive recently moved over to Ubuntu as alot of people know. Im looking for a programming language that is NOT object-orientated and compatable with it. I do not want interpreted languages, I want compiled langauges. I would prefere a BASIC language, but it doesnt matter too much, so does anybody have ideas?
Logged
  • Elliott Parkinson
Re: Looking for a programming language
« Reply #1 on: July 17, 2007, 12:35:40 pm »
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Gender: Male
  • Posts: 1645
I would prefere a BASIC language
I know a few BASIC compilers/languages but I'm not sure if they also work on Ubuntu

- BlitzBASIC (max or plus)
- DarkBASIC
- PureBASIC
- FreeBASIC
- Microsoft Visual BASIC (I don't prefer this one)
- Borland Visual BASIC

There are more of them, but most of the other ones suck.
Good luck.

On a similar note I want to learn a programming language and I am using Ubuntu Linux. I don't mind object orientation (or at least I don't think I do) but I'm really new to programming. I've used web 'languages' such as PHP, XHTML, JavaScript and CSS and various Game Makers such as Multimedia Fusion 2 but I want to learn a "real" language now.

I'd like to write programs that can be easily ported from one operating system to another. I heard wxWidgets is meant to be good :-\
That sounds similar to me :) I'm a webcoder and I know 'languages' such as XHTML, CSS, PHP, JavaScript, HTML DOM, XML and MySQL

I'm also learning BASIC languages, I suggest you also to. It's not that hard and there are many tutorials for it, although I learned C before BASIC.
Logged
  • Virtual Security
Re: Looking for a programming language
« Reply #2 on: July 17, 2007, 01:06:41 pm »
  • IBV
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Gender: Female
  • Posts: 1075
C for Majora (it's partly object based since you can define structures but not inherit polymorph and such)
C++ for Sol (this one the other hand is object oriented)

Oh and Majora, just because you use an object oriented language often doesn't mean you have to use that feature. C++ allows you to write only C code but use some other non object oriented C++ features for example.

If you don't want interpreted languages avoid Python, Perl, PHP, Ruby and all those. Java is a gray area since it is compiled to machine code, but it's compiled to the Java architecture, not the native architecture (such as your processor).

If you want to easily port from one system to another, you should know there is no easy way to do it. And no one is going to blame you for only supporting one system anyway as long as it's free/libre software and you allow people to change the source so they can port it themselves. Write in a portable way so that it's easy to port to more systems as you need. If you use an OO language you can for example do this by creating an abstract class with all platform-dependent functions you need then you create derivate classes from this base class where you actually implement these platform-dependent functions. Example:

Code: [Select]
class basePlatformDependent
{
  public:
    virtual CreateWindow(int w, int h)=0;
    .....
    .....
}

class windowsPlatformDependent : basePlatformDependent
{
  public:
    CreateWindow()
    {
      //Code to create a window on the Windows platform
    }
}

Just remember that there are other problems with porting. You have the processor architecture, as well as hardware architecture if you were to port to an embedded device (such as handhelds). It's NOT just "Windows, Mac and Linux".

wvWidgets help you with porting the GUI, but not port everything. It mostly do exactly that example code I wrote, but of course it's complete and has a lot more functions and platform-dependent classes (for GUI).

About language compatible. You really can't go wrong unless you choose a proprietary language/syntax (where there's only a proprietary compiler). If it's a free language it will most often work everywhere, and at least on GNU+Linux which is the most popular free operating system. The GNU Compiler Collection has loads of compilers; C, C++, Objective-C, Fortran and much more (and then it can also compile for a hell lot of architectures and platforms if you get the necessary patches). Choosing stuff like Game Maker, any MS product will most likely not work. And even if it would work, you should make sure it will in the future. Remember that MS don't own C and C++ just because they have a C and C++ compiler. C# is a gray area. I think there are free implementation of the dotNET platform, but I'm not sure how these are developed. If they are developed by reverse engineering; avoid them.

Using C and C++ depending on what you're doing is probably the wisest. And use scripting languages such as Python, Ruby, Perl and so on if you want to let people write plug-ins.


With all that said, I hope you both will release the code under a free software license.
Logged
My signature is empty.
Re: Looking for a programming language
« Reply #3 on: July 17, 2007, 02:08:16 pm »
  • Doesn't afraid of anything
  • *
  • Reputation: +42/-0
  • Offline Offline
  • Gender: Male
  • Posts: 7002
So, Venus, tell me what compiler and IDE you use for C++ so I can do the same. Links to any tutorials/guides geared at the particular software would also be greatly appreciated. As for releasing things under a free software license - that's what I plan on doing.

I'm using visual studio 2003 .NET  ...but that's only because half-life 2 only works with .NET versions of 2003 and 2005.  Also, i'm not Venus, so idk why i'm answering
Logged



i love big weenies and i cannot lie
Re: Looking for a programming language
« Reply #4 on: July 17, 2007, 02:15:47 pm »
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Gender: Male
  • Posts: 1645
So, Venus, tell me what compiler and IDE you use for C++ so I can do the same. Links to any tutorials/guides geared at the particular software would also be greatly appreciated. As for releasing things under a free software license - that's what I plan on doing.
I suggest Borland C++.
Microsoft Visual C++ sucks, actually, all microsoft software sucks.

C for Majora (it's partly object based since you can define structures but not inherit polymorph and such)
If you know the C structure, you also know the C++ structure. There are only a few things in C what C++ doesn't have like the Malloc function.
Logged
  • Virtual Security
Re: Looking for a programming language
« Reply #5 on: July 17, 2007, 06:21:38 pm »
  • IBV
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Gender: Female
  • Posts: 1075
So, Venus, tell me what compiler and IDE you use for C++ so I can do the same. Links to any tutorials/guides geared at the particular software would also be greatly appreciated. As for releasing things under a free software license - that's what I plan on doing.


Compiler: gcc/g++
"IDE": gEdit (a simple text editor with only syntax highlight)
I compile through a written script, or sometimes in simple cases by using the command line.

I wouldn't recommend tutorials. They only make you dumb by telling you how to create this window here and how to output that text piece there and such >_> But it doesn't actually teach you how to do general programming and thinking by yourself.

You should just learn the syntax (a very simple overview would be enough), and then you read references for the libraries you use. You need these references because you can't just put everything in your head (well, forgive me if you can). A reference is a documentation of what functions and classes are available in the library. Every time you include a library with #include, you should know what is "callable", you do this by reading the reference docs. If there is no reference docs, you read the .h/.hpp file that you just included.

Of course, tips and tricks docs are not bad either. These teach you good and bad habits and when you should make exceptions. A rule of thumb is don't believe "always or never" rules. One size does not fit all. If your teacher tells you "never use the goto statement" kick him in the balls and then you tell him "I'll use it if I believe it's better for a certain problem", then you read from a good source where a goto statement would benefit. (The answer on this one is that it COULD write more efficient code in some cases, the downside however is that in most cases it makes the code hard to read. It all depends on what your priorities are.)

Good-reads:
http://en.wikipedia.org/wiki/C%2B%2B (Read it all and you'll understand the very basics of the syntax and C++ programming. This is required to get something out of reference docs)
http://www.parashift.com/c++-faq-lite/index.html (Good source for inspirations, tips, tricks and more)
http://www.cppreference.com/index.html (Reference for the C and C++ standard library. If you write OO C++, don't bother to use the C-library unless you can't do it well in the C++-library, for example use the std::string class where you can instead of char-arrays and so on)
If you use other libraries, such as wxWidgets you'll need to read the reference docs for that too and so on.

*phew*
Logged
My signature is empty.
Re: Looking for a programming language
« Reply #6 on: July 17, 2007, 10:46:16 pm »
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Gender: Male
  • Posts: 1645
Um... maybe I'm wrong or something but Borland C++ is for Windows only, right? I thought my original post in the topic made it clear that I'm using Ubuntu Linux.
I'm sorry, I read wrong (again)

I wouldn't recommend tutorials. They only make you dumb by telling you how to create this window here and how to output that text piece there and such >_> But it doesn't actually teach you how to do general programming and thinking by yourself.
Depending on which tutorial, there are good and bad ones.
Logged
  • Virtual Security
Re: Looking for a programming language
« Reply #7 on: July 17, 2007, 10:57:39 pm »
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Posts: 1066
I would prefere a BASIC language
I know a few BASIC compilers/languages but I'm not sure if they also work on Ubuntu

- BlitzBASIC (max or plus)
- DarkBASIC
- PureBASIC
- FreeBASIC
- Microsoft Visual BASIC (I don't prefer this one)
- Borland Visual BASIC

There are more of them, but most of the other ones suck.
Good luck.

On a similar note I want to learn a programming language and I am using Ubuntu Linux. I don't mind object orientation (or at least I don't think I do) but I'm really new to programming. I've used web 'languages' such as PHP, XHTML, JavaScript and CSS and various Game Makers such as Multimedia Fusion 2 but I want to learn a "real" language now.

I'd like to write programs that can be easily ported from one operating system to another. I heard wxWidgets is meant to be good :-\
That sounds similar to me :) I'm a webcoder and I know 'languages' such as XHTML, CSS, PHP, JavaScript, HTML DOM, XML and MySQL

I'm also learning BASIC languages, I suggest you also to. It's not that hard and there are many tutorials for it, although I learned C before BASIC.
FreeBASIC is the only Free one, AFAIK. I haven't tried it out yet, though.
Um... maybe I'm wrong or something but Borland C++ is for Windows only, right? I thought my original post in the topic made it clear that I'm using Ubuntu Linux.
I'm sorry, I read wrong (again)

I wouldn't recommend tutorials. They only make you dumb by telling you how to create this window here and how to output that text piece there and such >_> But it doesn't actually teach you how to do general programming and thinking by yourself.
Depending on which tutorial, there are good and bad ones.
I found this really good tutorial one time (even though I never finished it). It's for Python, so it can't help you here. :-\
C for Majora (it's partly object based since you can define structures but not inherit polymorph and such)
C++ for Sol (this one the other hand is object oriented)

Oh and Majora, just because you use an object oriented language often doesn't mean you have to use that feature. C++ allows you to write only C code but use some other non object oriented C++ features for example.

If you don't want interpreted languages avoid Python, Perl, PHP, Ruby and all those. Java is a gray area since it is compiled to machine code, but it's compiled to the Java architecture, not the native architecture (such as your processor).

If you want to easily port from one system to another, you should know there is no easy way to do it. And no one is going to blame you for only supporting one system anyway as long as it's free/libre software and you allow people to change the source so they can port it themselves. Write in a portable way so that it's easy to port to more systems as you need. If you use an OO language you can for example do this by creating an abstract class with all platform-dependent functions you need then you create derivate classes from this base class where you actually implement these platform-dependent functions. Example:

Code: [Select]
class basePlatformDependent
{
  public:
    virtual CreateWindow(int w, int h)=0;
    .....
    .....
}

class windowsPlatformDependent : basePlatformDependent
{
  public:
    CreateWindow()
    {
      //Code to create a window on the Windows platform
    }
}

Just remember that there are other problems with porting. You have the processor architecture, as well as hardware architecture if you were to port to an embedded device (such as handhelds). It's NOT just "Windows, Mac and Linux".

wvWidgets help you with porting the GUI, but not port everything. It mostly do exactly that example code I wrote, but of course it's complete and has a lot more functions and platform-dependent classes (for GUI).

About language compatible. You really can't go wrong unless you choose a proprietary language/syntax (where there's only a proprietary compiler). If it's a free language it will most often work everywhere, and at least on GNU+Linux which is the most popular free operating system. The GNU Compiler Collection has loads of compilers; C, C++, Objective-C, Fortran and much more (and then it can also compile for a hell lot of architectures and platforms if you get the necessary patches). Choosing stuff like Game Maker, any MS product will most likely not work. And even if it would work, you should make sure it will in the future. Remember that MS don't own C and C++ just because they have a C and C++ compiler. C# is a gray area. I think there are free implementation of the dotNET platform, but I'm not sure how these are developed. If they are developed by reverse engineering; avoid them.

Using C and C++ depending on what you're doing is probably the wisest. And use scripting languages such as Python, Ruby, Perl and so on if you want to let people write plug-ins.


With all that said, I hope you both will release the code under a free software license.
You're talking about Mono. It's a free implementation of C# that runs on a few platforms. I'm not sure how far it has came along, but right now people are in the process of porting a few programs like Paint.NET to it.
So, Venus, tell me what compiler and IDE you use for C++ so I can do the same. Links to any tutorials/guides geared at the particular software would also be greatly appreciated. As for releasing things under a free software license - that's what I plan on doing.
Geany is a very good IDE if you want something simple, but still a complete IDE. Anjuta is a good choice (or so I have heard) if you want a lot of features. The complier, GCC, comes with Ubuntu, so there's no problems there. ;)
Logged
Re: Looking for a programming language
« Reply #8 on: July 18, 2007, 02:02:01 am »
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Gender: Male
  • Posts: 1902
Just suggesting a C++ IDE, but I use Anjuta C++.
« Last Edit: July 19, 2007, 12:09:42 am by Halu »
Logged


.TakaM was here.
Quote
so my friend stole a giant bag of ketchup out of the ketchup pumping things and brought it to our table and we took it in the bathroom and i smashed it over the sink and kicked it around the bathroom and smeared it everywhere and we all took turns kicking the ketchup out of it and when we were done it looked like an african village was murdered in the bathroom
XFD.
  • Awesome Land
Re: Looking for a programming language
« Reply #9 on: July 18, 2007, 07:53:14 am »
  • *
  • Reputation: +0/-0
  • Offline Offline
  • Posts: 1066
Just suggesting a C++ IDE Jai, but I use Anjuta C++.
It's too confusing for me, but I'm just a stupid newbie. :P
Logged
Pages: [1]   Go Up

 


Contact Us | Legal | Advertise Here
2013 © ZFGC, All Rights Reserved



Page created in 0.317 seconds with 58 queries.

anything