Interfaces

BlitzMax Forums/BlitzMax Programming/Interfaces

CoderLaureate(Posted 2005) [#1]
I started a pretty hot topic with my question about Function/Method Overloading.

Here's another. How about Interfaces?

Mark and Company have done a great thing by including the 'Abstract' keyword, and I'm sure that one can create the equivalent of an interface using this, but what about implementing multiple interfaces? Can this be done?


Dreamora(Posted 2005) [#2]
No, BM only supports single inheritance mechanism at the moment and so far it was not mentioned to change this ... although it would be quite usefull together with the abstract behavior.


CoderLaureate(Posted 2005) [#3]
Oh well, I guess you can't have everything... ;)
It's not really a show stopper. I'm still liking everthing that I'm seeing in BMAX. Can't wait for the official release, and a decent (non-beta) IDE.


FlameDuck(Posted 2005) [#4]
Here's another. How about Interfaces?
Yes please.


StuC(Posted 2005) [#5]
Indeed - I like the idea it too.

Cheers,

Stu


N(Posted 2005) [#6]
Suprised I didn't see this before. Has my vote.


Red Ocktober(Posted 2005) [#7]
ya know... i must ask... and i do feel a lil guilty, seeing as i was one of those whining for an oop version of BMax back when...

but, with all the new things on the wish list, why not just use c++... i mean, ya add this here... that there... the language is gonna mutate into something that is neither BlitzBasic or c++, but a strange offshoot that has qualitites of both, but is neither...

i think that we may be going a lil too far, at least right now that is, trying to stuff everything imagineable into 'Max... as opposed to getting everything working solidly, and the breath of it expanded (3D)...

this is not to say that some of these things aren't desirable, but they can come later... after it can be gauged how well coders are adapting to what they already have...

as it stands now, BMax is worlds better for development than the old Blitz is... lets let Mark concentrate on getting the Win version out, the IDE done, the 3D module done... and solidly working...

the Linux and Mac versions wrapped up... then we can look at enhancements... after we've had a chance to really do some stuff with it...

i mean... all the feedback from people out there who are hacking away on the extreme is good and all... but me thinks that we run the risk of loosing perspective...

there are already c compilers out there that can accomodate some of the wishlist items i've been seeing lately... modding 'Max to do the same thing, well... it just seems not only that you run the risk of losing the qualities that make it attractive, but also it's gonna require you learn some of the same semantics as if you were programming in c or c++ anyway... so why go through all the bother, and not use c...


... just an early morning thought... forgive me :)

--Mike


N(Posted 2005) [#8]
*Covers his ears and screams "I'm not hearing this!" repeatedly*


Red Ocktober(Posted 2005) [#9]
LOL @ Noel... must be sun spots affecting me, or old age setting in hard...

i'll be alright in a few minutes... coffee wife... strong coffee!!!

--Mike


Robert(Posted 2005) [#10]
It would probably be useful in more complex projects, but since it is already possible to implement interfaces in a slightly long-winded way, I would not consider it urgent.


Regular K(Posted 2005) [#11]
I don't own BlitzMax, but what Red Oktober said sounded good. Get what is promised out now, and then add all the extra stuff :)


CoderLaureate(Posted 2005) [#12]
I know C++. I've used it professionaly on occasion. I don't like using C++ because there are other languages out there that offer the same complexity, but are far less cryptic. B3D is an awesome example of a powerful B.A.S.I.C. programming language. A majority of the people know basic simply because that was the first language we ever learned.

I LOVE the very concept of Object Oriented Programming. I do a lot of C#/ASP.Net development now-a-days. But I've also done a lot of Java development (I like C# better), and some VC6 development. I can't wait to see what Blitz Research is going to do with BMAX. I bought a copy (although I don't own a Mac). Mainly to show B.R. my support, but also to play around with the Windows beta to get a feel for the language.

I'd say if B.R. is going to evolve Blitz Basic into an O.O.P. framework. They should go for the gusto. Interfaces, Methods that take parameters. Method/Function Overloading. Overrides. The whole thing.

But that's my opinion.

As I've stated in one of my previous posts. I'm just happy to see a complex easy to use high level O.O.P. language that doesn't compile down to some "Byte Code".

-Jim


FlameDuck(Posted 2005) [#13]
I've also done a lot of Java development (I like C# better)
Argh! Heretic! Perhaps you can tell me what the .Net equivalent of a java.util.HashMap is then? I tried searching MSDN, but it only came up with 4 hits. About Java, natch.

Methods that take parameters
They have that already.

Overrides.
That too.

It's somewhat alarming that people see C++ as the holy grail of OOP. There are a lot of things you can do in C++ (multiple inheritance of concrete classes for example) that should simply not be allowed to happen in an OO environment.


N(Posted 2005) [#14]
I prefer Java (scary that I now like it), C#, and D when I want a C-esque OOP language.


Red Ocktober(Posted 2005) [#15]
It's somewhat alarming that people see C++ as the holy grail of OOP.

now that's a misconception if i ever heard one... what gives you the idea that people see c++ as the holy grail of oop... what has been said here or near here that gives you this impression...

it's the free form nature of c that makes it appealing to me... that along with the object oriented capabilities that c++ affords is why i like using c++ and c... and that in turn is probably why i use it for comparison...

i'm sure other coders have their own reasons for using it when they need an object oriented development tool... but i hardly think they see it as a holy grail of anything...

if i saw anything as a 'holy grail', as you put it... for oop... i would have to say it would've probably have been Smalltalk...


--Mike