Click Here
home features news forums classifieds faqs links search
6071 members 
Amiga Q&A /  Free for All /  Emulation /  Gaming / (Latest Posts)
Login

Nickname

Password

Lost Password?

Don't have an account yet?
Register now!

Support Amigaworld.net
Your support is needed and is appreciated as Amigaworld.net is primarily dependent upon the support of its users.
Donate

Menu
Main sections
» Home
» Features
» News
» Forums
» Classifieds
» Links
» Downloads
Extras
» OS4 Zone
» IRC Network
» AmigaWorld Radio
» Newsfeed
» Top Members
» Amiga Dealers
Information
» About Us
» FAQs
» Advertise
» Polls
» Terms of Service
» Search

IRC Channel
Server: irc.amigaworld.net
Ports: 1024,5555, 6665-6669
SSL port: 6697
Channel: #Amigaworld
Channel Policy and Guidelines

Who's Online
15 crawler(s) on-line.
 119 guest(s) on-line.
 0 member(s) on-line.



You are an anonymous user.
Register Now!
 BigD:  8 mins ago
 OlafS25:  10 mins ago
 kolla:  30 mins ago
 amigakit:  39 mins ago
 NutsAboutAmiga:  42 mins ago
 Gunnar:  1 hr 20 mins ago
 Frank:  1 hr 26 mins ago
 MickJT:  2 hrs 5 mins ago
 A1200:  2 hrs 29 mins ago
 outlawal2:  3 hrs 3 mins ago

/  Forum Index
   /  Amiga General Chat
      /  Amiga Inc. Loses U.S. Trademarks
Register To Post

Goto page ( Previous Page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 Next Page )
PosterThread
Nonefornow 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 11-Feb-2019 18:55:10
#801 ]
Regular Member
Joined: 29-Jul-2013
Posts: 339
From: Greater Los Angeles Area

@Dave73

The meetings between those parties have continued, and that's a fact.

Do we know for sure that the meetings are to discuss any potential Amiga related development?

The blog only makes reference to the development of the TheC64.

 Status: Offline
Profile     Report this post  
broadblues 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 12-Feb-2019 13:30:36
#802 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Hypex

Quote:

The main problem with BOOPSI, from a programming point of view, the way I see it, is that BOOPSI is a hack.

No i really isn't

Quote:

Like Dayatypes. It forces OOP concepts into a procedural programming language style, and it looks like a mess.


Datatypes *are* BOOPSI (so is MUI just not decended from gadgetclass) . C is just a general programming language it's quite reasonable to do object orientated prgramming in it. But BOOPSI does not depend on C at all and can be used from any program language from assembler to python, it's a message based object orientated system.

Quote:

Before I learnt about OOP I didn't know why it had this weird non sensical API. It's putting C++ ideas into a C API.


No it's not.

Quote:

Some macros would have helped here or using C objects with a set of function pointers embedded as the API.


That would have bound it to one pgramming langugae.

Quote:

But if Commodore really wanted to introduce C++ concepts they should have provided a C++ API.


There are many more object orientated languges than C++. C++ was in it's relative infancy when BOOPSI was invented.

Quote:

They had a chance to fix this in OS4 since they introduced OOP with interfaces,


Interfaces are not object orientated in any way. There is nothing object orientated about an array of function pointers. You have the sysntax of an implmentation confused with the overall paradigm.

Function pointers are neither required for OO nor do they make something OO.

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
rzookol 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 12-Feb-2019 15:10:08
#803 ]
Regular Member
Joined: 4-Oct-2005
Posts: 318
From: Poland, Lublin

In MorphOS we have decent binding MUI with Objective-C.
An example: https://github.com/widelec-BB/DeTerm/blob/master/application.m

 Status: Offline
Profile     Report this post  
kolla 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 13-Feb-2019 3:23:40
#804 ]
Elite Member
Joined: 20-Aug-2003
Posts: 2859
From: Trondheim, Norway

@rzookol

If only MorphOS was ported to 68k... ;)

_________________
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC

 Status: Offline
Profile     Report this post  
Hypex 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 13-Feb-2019 15:20:48
#805 ]
Elite Member
Joined: 6-May-2007
Posts: 11180
From: Greensborough, Australia

@broadblues

Quote:
No i really isn't


I knew I'd get your attention.

Quote:
Datatypes *are* BOOPSI (so is MUI just not decended from gadgetclass) . C is just a general programming language it's quite reasonable to do object orientated prgramming in it. But BOOPSI does not depend on C at all and can be used from any program language from assembler to python, it's a message based object orientated system.


It can be used from anything if the support is there, but for a procedural language like C that AmigaOS was built on, it's unsuitable. It's taking modern concepts and putting it into an old design.

Frankly, I find what was done with BOOPSI to AmigaOS, to be rather anachronistic.

Quote:
No it's not.


Explain this?


Object *o = NewDTObjectA (name, attrs);


Why is it called NewDTObjectA()? I read that and I think it is creating a new datatype system object for internal use. In standard Amiga parlance such an allocation would usually be called like AllocDTObjectA(). But it is used to open a datatype file. So being called OpenDTObjectA() would make more sense. With some knowledge what it really is trying to do is something like this:

Object *DTObject;

new DTObject(name, attrs);


Quote:
That would have bound it to one pgramming langugae.


Macros can be ported across languages. AmigaOS has lots of macros for things. And structures as well with whatever content they desire. But an embedded function still needs the structure passed to it so wouldn't be worth it.

Quote:
There are many more object orientated languges than C++. C++ was in it's relative infancy when BOOPSI was invented.


I suppose it was. Not considered the best example of OOP. But a logical next step from C.

Quote:
Interfaces are not object orientated in any way. There is nothing object orientated about an array of function pointers. You have the sysntax of an implmentation confused with the overall paradigm.


In ExecSG they called functions as methods. The APICALL compiler magic is in every function call in an interface. Is passes the interface as the first parameter. The interface functions as an object, with the library calls as methods. Each call is automatically passed the interface to act as the self object it came from. That is basic OOP there. And also why the call above then becomes on OS4:

Object *o = IDatatypes>NewDTObjectA (name, attrs);


Quote:
Function pointers are neither required for OO nor do they make something OO.


No but on OS4 they are implemented as methods.

Last edited by Hypex on 14-Feb-2019 at 01:26 AM.
Last edited by Hypex on 14-Feb-2019 at 01:22 AM.
Last edited by Hypex on 13-Feb-2019 at 03:46 PM.
Last edited by Hypex on 13-Feb-2019 at 03:45 PM.

 Status: Offline
Profile     Report this post  
NutsAboutAmiga 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 13-Feb-2019 16:28:50
#806 ]
Elite Member
Joined: 9-Jun-2004
Posts: 12795
From: Norway

@Hypex

it in reality where tiny different between a struct and a class, in C++.

I often se pure C++ programs mistakenly use "struct", instead of "class".

_________________
http://lifeofliveforit.blogspot.no/
Facebook::LiveForIt Software for AmigaOS

 Status: Offline
Profile     Report this post  
Snorg 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 6:47:51
#807 ]
Regular Member
Joined: 1-Feb-2018
Posts: 117
From: Unknown

@NutsAboutAmiga

struct and class are identical *except* for the default member visibility: public and private, respectively.

However, having strictly a C heritage, struct connotes something different than does class, something more like a record or descriptor. On my part, I use class if I want to use data hiding and/or strictly *internal* control over the state of any instances (which is almost always more verbose but also more disciplined), otherwise I use struct. C++ 'interfaces' are structs because, as specifications, every constituent type, method, or constant is (typically) meant to be visible.

Back to regularly scheduled programming ...

 Status: Offline
Profile     Report this post  
Snorg 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 7:25:43
#808 ]
Regular Member
Joined: 1-Feb-2018
Posts: 117
From: Unknown

@Hypex

While I'm here ...

When the interface paradigm of OS4 was being designed, something was lost in translation. Now, this is largely a matter of terminology, not technicality, but one does not instantiate an interface. Rather, one implements an interface with a class then instantiates a class into an object.

BOOPSI employs a runtime metadata scheme whereby a number of C macros in conjunction with the intuition library (I'm forgetting so much now) provide the functionality required to use / interpret this metadata in order to access instance data and dispatchers. Inheritance is simply the chaining of these instances together - conceptually, it is somewhat reminiscent of COM aggregation (though utterly different in implementation).

For my money, interface descriptors should be embedded into libraries (.interface) (not separate FD/SFD files) (i.e. like type libraries from which you can generate includes, etc.) Version them, sure, but they should always be backward compatible (i.e. extend them, don't break binary compatibility between versions). Implementing classes (.class) should (just-in-time) load them as dependencies in order to provide requisite run-time metadata (list of methods and method signatures). Implement / code the classes in whatever language you like. Personally, I do like C++, but I'm for choice and competition.

Something I don't like about the OS4 "IDL" library interface scheme is that is assumes you use C. The designers could have used 'pure' CORBA IDL and simply established a mapping from IDL types to language-specific constructs. I understand, however, they were trying to get things done.

Lastly, introducing compiler changes to accommodate a hidden interface ('this') pointer in C was unnecessary and has (I presume) complicated the work of those maintaining the toolchains.

Anyway, this is all reminiscing on my part now. The OS has many nice aspects, but the core is so outdated ...

Last edited by Snorg on 14-Feb-2019 at 07:42 AM.
Last edited by Snorg on 14-Feb-2019 at 07:38 AM.

 Status: Offline
Profile     Report this post  
broadblues 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 12:28:10
#809 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Hypex

Quote:


Explain this?


Object *o = NewDTObjectA (name, attrs);


Why is it called NewDTObjectA()?


Because it's the exact analog of Intuitions NewObject() in facr it's wrapper for that function, the wrappser does some "magic" to determine which class of object is needed from the tags provided either from the the file, (DTST_FILE) data in memory (DTST_MEM) of a specificly requested empty object of a given type (DTST_RAM).

Quote:

Frankly, I find what was done with BOOPSI to AmigaOS, to be rather anachronistic.


Anything that was invented 30 years ago might seam anachronistic today I suppose.


Quote:


In ExecSG they called functions as methods. The APICALL compiler magic is in every function call in an interface. Is passes the interface as the first parameter. The interface functions as an object, with the library calls as methods. Each call is automatically passed the interface to act as the self object it came from. That is basic OOP there. And also why the call above then becomes on OS4:



Not really no, are you trying to say that pre amigaos4 libararies are object orientated too? The functions in the jump table all get passed the library base in just such a hidden way.

There is some superficial similarity to the syntax of C++ objects so I see where you might be confused, but there is no other aspects the OO pardigm. No objects, class inheritance polymorphism etc etc. A house might have stained glass in it's windows, doesn't make it a cathedral!

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
kolla 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 13:00:08
#810 ]
Elite Member
Joined: 20-Aug-2003
Posts: 2859
From: Trondheim, Norway

A cathedral is any building that a bishop has defined as such.

Back to the bazaar... :)

_________________
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC

 Status: Offline
Profile     Report this post  
Hypex 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 14:51:00
#811 ]
Elite Member
Joined: 6-May-2007
Posts: 11180
From: Greensborough, Australia

@NutsAboutAmiga

It almost sounds funny using a struct over a class. But struct was a well established classic object in C. Will take a lot before a class is considered as classic.

Last edited by Hypex on 14-Feb-2019 at 02:51 PM.

 Status: Offline
Profile     Report this post  
Hypex 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 15:35:51
#812 ]
Elite Member
Joined: 6-May-2007
Posts: 11180
From: Greensborough, Australia

@Snorg

Quote:
When the interface paradigm of OS4 was being designed, something was lost in translation. Now, this is largely a matter of terminology, not technicality, but one does not instantiate an interface. Rather, one implements an interface with a class then instantiates a class into an object.




Sorry couldn't resist that one.

And in the OS4 case of an interface, one is called to get the interface, then later drop it.

However, being it is from a library, I thought they might have called it a book. So instead of interfaces there would be libraries of functions, with libraries of books containing functions.


OpenBook()
CloseBook()


Quote:
Something I don't like about the OS4 "IDL" library interface scheme is that is assumes you use C. The designers could have used 'pure' CORBA IDL and simply established a mapping from IDL types to language-specific constructs. I understand, however, they were trying to get things done.


Well, yes, there is a focus on C. Since there was a move from 68K/C to just C. It's possible a struct could be converted to ASM for PPC or any other language. C just has the best support. Working from the SDK.

Quote:
Lastly, introducing compiler changes to accommodate a hidden interface ('this') pointer in C was unnecessary and has (I presume) complicated the work of those maintaining the toolchains.


It does make it more complicated to deal with since an extra resource must be opened and freed. Even when using actual resources which were always persistent. But they needed someway to replace the backwards jump table with a more portable version.

 Status: Offline
Profile     Report this post  
Hypex 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 16:20:55
#813 ]
Elite Member
Joined: 6-May-2007
Posts: 11180
From: Greensborough, Australia

@broadblues

Quote:
Because it's the exact analog of Intuitions NewObject() in facr it's wrapper for that function, the wrappser does some "magic" to determine which class of object is needed from the tags provided either from the the file, (DTST_FILE) data in memory (DTST_MEM) of a specificly requested empty object of a given type (DTST_RAM).


That may be so, but it's still called NewObject(), so still has that fusion of a new operator and object formed into a function. In the API, any function with a "New" in the name tended to be a new replacement function over an old function. Reading the autodoc, it talks about creating an object, so it would seem more consistent and understandable to call it CreateObject().

Quote:
Anything that was invented 30 years ago might seam anachronistic today I suppose.


Well yes it would seem. Though my focus would be on what they were doing 30 years ago, by putting modern conceps into a traditional design. They can build OOP into it however they want, but there was a language barrier. The OS outgrew the language it was built on.

Quote:
Not really no, are you trying to say that pre amigaos4 libararies are object orientated too? The functions in the jump table all get passed the library base in just such a hidden way.


No, I'm just concentrating on OS4. In OS3 the library base was usually in A6 and not passed as usual parameter. Nor did it appear in the library call.

But "Not really no" to what in particular? The terms I've used are how the SDK describes OS4 libraries and also from include files.

Quote:
There is some superficial similarity to the syntax of C++ objects so I see where you might be confused, but there is no other aspects the OO pardigm. No objects, class inheritance polymorphism etc etc. A house might have stained glass in it's windows, doesn't make it a cathedral!


LOL. My "confusion" comes from the fact that the interface contains what they call methods which are passed the interface as the self. Like I said, this is basic OOP, not any full or advanced OOP. A class generally has private data and public methods. Here they have an interface that keeps private data elsewhere in the library and public methods. When called they know from where, the interface acting as a basic object. They could have called them functions, for all I care. But the fact is they make references to a self and methods, thus they invoke an OOP paradigm. If there is less OOP in the interfaces than BOOPSI itself, then they shouldn't have used OOP terms to describe non OOP parts. But the evidence tells me otherwise.

 Status: Offline
Profile     Report this post  
matthey 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 18:21:21
#814 ]
Super Member
Joined: 14-Mar-2007
Posts: 1968
From: Kansas

With all this off topic Smalltalk about adding new OOP concepts to an old AmigaOS, the developer section of this forum is practically dead. Maybe a little activity over there would make it look like someone else other than Hyperion is doing Amiga development. Do the mods ever split threads which have drifted off topic around here?

 Status: Offline
Profile     Report this post  
number6 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 18:41:07
#815 ]
Elite Member
Joined: 25-Mar-2005
Posts: 11540
From: In the village

@matthey

Quote:
Do the mods ever split threads which have drifted off topic around here?


As I have sadly had to report for years when any request for mod involvement is made, there are no mods.

There is a site admin and a sys admin. That's it.

Frankly I gave up trying to update what -was- a one topic devoted thread after seeing the off-topic thrust for so many pages. At this point anythng on-topic will merely get lost.

#6

_________________
This posting, in its entirety, represents solely the perspective of the author.
*Secrecy has served us so well*

 Status: Offline
Profile     Report this post  
Lou 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 19:37:32
#816 ]
Elite Member
Joined: 2-Nov-2004
Posts: 4169
From: Rhode Island

@number6

Did you happen to catch the score of the game last night?

 Status: Offline
Profile     Report this post  
broadblues 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 14-Feb-2019 23:14:39
#817 ]
Amiga Developer Team
Joined: 20-Jul-2004
Posts: 4446
From: Portsmouth England

@Hypex

Quote:

in the API, any function with a "New" in the name tended to be a new replacement function over an old function.


In which API exactly? there is excactly one function in intuition that starts with New and that is NewObject() which is a wrapper arround OM_NEW

Actually I tell a lie on second glance there is NewModifyProp() pssobly the only function in the my entire autodocs that confirms to your idea of a replacement function.

Feel free to correct me with examples...

@thread

Yeah sorry OT,

/me sticks tongue out and points at Hypex ---> he started it!

_________________
BroadBlues On Blues BroadBlues On Amiga Walker Broad

 Status: Offline
Profile     Report this post  
mkopack73 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 16-Feb-2019 2:57:00
#818 ]
New Member
Joined: 15-Feb-2019
Posts: 1
From: Unknown

You guys do realize that the very first C++ compilers were really Preprocessors that took your C++ source and output C source and then compiled that, right?

 Status: Offline
Profile     Report this post  
Snorg 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 16-Feb-2019 8:11:01
#819 ]
Regular Member
Joined: 1-Feb-2018
Posts: 117
From: Unknown

Again, since we're here,

@mkopack73

Sure, an example of which is/was SAS/C++, well known to many Amiga programmers.

Clearly, a particular syntax/grammar alone doesn't make software object-oriented, but it can support the use of OOP patterns. Heck, use assembly, for that matter. The topic has been more than exhaustively dealt with for years and years - OOP doesn't imply code quality, but it is a useful paradigm.

One does not pontificate in the forum. Rather, one points out the incongruities and runs the other way ...

;)

 Status: Offline
Profile     Report this post  
Hypex 
Re: Cloanto acquire Amiga Inc Trademark
Posted on 17-Feb-2019 16:10:35
#820 ]
Elite Member
Joined: 6-May-2007
Posts: 11180
From: Greensborough, Australia

@matthey

Quote:
With all this off topic Smalltalk about adding new OOP concepts to an old AmigaOS, the developer section of this forum is practically dead.


I actually realised on thee page before I had gone off topic...

 Status: Offline
Profile     Report this post  
Goto page ( Previous Page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 Next Page )

[ home ][ about us ][ privacy ] [ forums ][ classifieds ] [ links ][ news archive ] [ link to us ][ user account ]
Copyright (C) 2000 - 2019 Amigaworld.net.
Amigaworld.net was originally founded by David Doyle