The collected works of porter - Page 7

PymbleSoftware wrote: They had object-orientated code in C by use of structs and function pointers.


Similarly, Xt Intrinsics & Motif, MS-Windows & OS/2 PM.

I can't use the original Mac as an example as that was 68k assembler & pascal, but it achieved the same.
Land of the Long White Cloud and no Software Patents.
PymbleSoftware wrote: FREENIX was a movement and bound to happen Linux just got there first.


What alot of people think of as Linux, is actually GNU.

Linux just slotted in where the Hurd was supposed to be, as it got stuck in a tar-pit.
Land of the Long White Cloud and no Software Patents.
R-ten-K wrote:
BTW, the quote has nothing to do with plagiarism. Picasso was referring to nature/reality, not other people's work.


It is interesting that it is western capitalism that decided that you can steal ideas.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
Having "installp" you may find it refreshingly modern. :)
Land of the Long White Cloud and no Software Patents.
I've been tinkering with the idea of Objective C as I want to do something with modern macs, but I consider it an abortion of a language and a cruel joke on the world.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
R-ten-K wrote:
Huh?


Perhaps my dig is more at Apple than Objective C as a language in itself. Making Objective C my-way-or-the-highway. As a curiosity it's fine, as mandatory it's reason to have no enthusiam for macs anymore.

I must admit I am bemused at the rants at Java. The sites I've looked up can come up with pages of apparent evidence and I'm left with is that all you have? If you recognize it for what it is, a very portable and managed environment for OO. I loose no sleep over lack of operator overloading.
Admittedly my main focus is on the server with J2EE systems, and it is close to ideal. It just does it's job.

Is there anyone here who has programmed a Smartcard Applet in PHP or Python?

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
You have an idea for an application that you want to build once and ideally once only.

Cross platform means at least POSIX including Mac, Linux, Solaris, IRIX etc, and of course Windows. Lets leave Android out of the equation. But as you are doing Mac, you can in theory include iPhone/iPad if you want.

So how do you do the GUI?

It is a traditional computer app written in C/C++ that really uses files and devices, not a website you want on a PC. It is properly layered so factoring and rebuilding the GUI code natively for each platform is not a technical issue, it's a time and maintenance issue. The GUI is not very fancy, dialogs, buttons and text entry fields, no 3D or real time graphics used.

You also want to be able to freely distribute the application.

We're hammering languages in other threads, how about GUIs and their toolkits here?
Land of the Long White Cloud and no Software Patents.
If you have two apples, are they a pair?

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
I must admit I have to do some Qt, I have a cheap fondleslab ( made in China ) and it runs Angstrom Linux with a touchscreen, no X11. The only GUI access they provide is Qt.
Land of the Long White Cloud and no Software Patents.
Similar.

Perhaps dry-joint or loose connection?
Land of the Long White Cloud and no Software Patents.
kev009 wrote:
What's funny is that a couple of interns could easily whip the UX into shape and bundle some more modern BSD stuff and provide a decent shell experience.


Those same interns would also attempt to improve "loadsa stuff" and in term break many mission critical applications that have been running for the last 20 years.

Yup, I reckon those interns could leave their mark.

For every spotty intern who moans about not using zsh or git I'll point to ten people getting real work done.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
kev009 wrote:
zsh and git will hose your system if installed and have no productivity merits :roll:


What pisses me off is kids who write shell scripts and add "#!/bin/zsh" at the top and claim they are being hyperproductive because of it, and instead have made a script that then won't work on the target systems because, funnily enough they didn't have and previously didn't need zsh until the spotty erk decided that they could override the change control of an organisation.

Similar with GIT, just because you use GIT on your favourite FOSS project does not mean you have to force it onto every server you see, having a distributed system that works well using SVN is not magically improved by breaking everything to satisfy your GIT evangelism.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
I thought they all did. However original "X-Windows" idea of a clipboard behaviour is different to macintosh/windows. You don't copy and paste, you highlight a selection and that is then available for pasting.

Select an area is the X-windows version of copy, then pasting often done with center click.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
A Unix workstation mouse with only two buttons? I bet you're using a PC mouse.....

With XFree86 they could map two buttons to three by treating pressing both buttons at the same time as the third button.

Modern mice with scroll wheels often use push the scroll wheel as the third button.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
bluecode wrote:
Nope and I dispute those languages are the currrent lingua franca of programming unless you are talking about *NIX based computing.


I would point out that C is used on very many *non* UNIX/POSIX systems. It is used in embedded systems with no OS at all, all versions of windows including Windows CE etc, BeOS, OS/2, DOS, Amiga/OS, PalmOS, macintosh classic and can be used on many IBM systems including OS/400 etc.

It's rather like C is the Cheddar in Monty Python's Cheese Shop sketch.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
bluecode wrote:
Java is more prevalent on mobile, probably 95% of all phones especially since the last major C++ phone platform (Nokia) went away and even in embedded Java has displaced C, and C will never regain the popularity it had there.


I wasn't aware that the iPhone and iPad used Java. It's counted as optional for Lion.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
Oskar45 wrote:
But, no, I'd started Windows Programming with 3.0 [although at that time Windows had already existed for a couple of years on the fringe of the DOS world]...


I started Windows 1.0 programming in 1987 with Microsoft C 3.0.

Now we're back to those tiled windows with Metro.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
Hi,

I am writing a man page, the neko_groff is emitting blank pages at the start of the output, even for postscript as output.

Code: Select all

$ which groff
/usr/nekoware/bin/groff
$ groff -version
GNU groff version 1.19.1
Copyright (C) 2004 Free Software Foundation, Inc.
GNU groff comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of groff and its subprograms
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.

called subprograms:

GNU eqn (groff) version 1.19.1
GNU grops (groff) version 1.19.1
GNU troff (groff) version 1.19.1


My man page is really simple

Code: Select all

$ cat testpage
.TH TESTPAGE 1 "3 January 2012"
.SH NAME
testpage(1) \- A test page


On Linux, I get

Code: Select all

$ groff -version
GNU groff version 1.18.1.1
Copyright (C) 2002 Free Software Foundation, Inc.
GNU groff comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of groff and its subprograms
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.

called subprograms:

GNU eqn (groff) version 1.18.1.1
GNU troff (groff) version 1.18.1.1
GNU grops (groff) version 1.18.1.1


and my output looks sensible:

Code: Select all

$ nroff -man <testpage
TESTPAGE(1)                                                        TESTPAGE(1)



NAME
testpage(1) - A test page



3 January 2012                     TESTPAGE(1)


however on IRIX, I get 40 blank lines ( bare LF ) prepended to the output. I've tried with both nekoware on and off the path. I don't have the original SGI versions of the programs.

Any suggestions? ( apart from strip them off afterwards )

Thanks,

porter
Land of the Long White Cloud and no Software Patents.
Let's see if this gets more downloads than neko_libXp. :roll:

This is a project I've been working on for the last decade and have decided to publish and be damned, as they say.

It is a clean-room implementation of IBM's SOM toolkit including DSOM.

I am calling it "somFree" for want of a better name.

It is built using MIPSpro with mips3 and tested on my octane using 6.5.22m

The components have been split up to mimic the way it is split up on AIX.

Code:
i N  somtk.man.manpages [d]            28+  Man Pages
i N  somtk.man.relnotes [d]            24+  Release Notes
i N  somtk.sw.comp [d]                548+  Compiler Software
i N  somtk.sw.dsom [d]               1640+  Distributed SOM
i N  somtk.sw.ir [d]                  528+  Interface Repository
i N  somtk.sw.rte [d]                 340+  Run Time Environment
i N  somtk.sw.tests                    60+  Tests programs
i N  somtk.sw.util [d]               1056+  Utilities


The release notes are worth noting.

Code:
bash-4.0$ relnotes somtk 1
SOMFREE(1)                                                          SOMFREE(1)

NAME
somFree(1) - somFree Toolkit

DESCRIPTION
somFree  provides  the  runtime and development environment for running
programs using SOM.

HISTORY
This software is a clean-room implementation of IBM's SOM.

4 January 2012                      SOMFREE(1)


Code:
bash-4.0$ relnotes somtk 2
SOMFREE(1)                                                          SOMFREE(1)

NAME
somFree(1) - somFree Toolkit

INSTALLATION
Package  is installed in /opt/somtk and associated subdirectories. Fol-
lowing installation the somcorba script should be run to  generate  the
include files for development.

4 January 2012                      SOMFREE(1)


Code:
bash-4.0$ relnotes somtk 3
SOMFREE(1)                                                          SOMFREE(1)

NAME
somFree(1) - somFree Toolkit

ENVIRONMENT
The following environment variables should be set:

SOMBASE
This should be set to /opt/somtk.

SOMDPORT
This should be a unique value for accessing somdd.

SOMIR  This  points  to  the  interface repository file, normally $SOM-
BASE/etc/som.ir.

LD_LIBRARY_PATH
This should be set to include $SOMBASE/lib32.

4 January 2012                      SOMFREE(1)


Also of interest are the man pages for somtest0 and somtest1.

Code:
bash-4.0$ MANPATH=/opt/somtk/man man somtest0
bash-4.0$ MANPATH=/opt/somtk/man man somtest1


But you'll have to install it to read those.

A simple SOM Hello World program is as follows:

Code:
bash-4.0$ cat hello.cpp
#include <som.xh>

int main(int argc,char **argv)
{
SOMClassMgr *mgr=somEnvironmentNew();

mgr->somDumpSelf(0);

somEnvironmentEnd();

return 0;
}

bash-4.0$ CC hello.cpp -I/opt/somtk/include -L/opt/somtk/lib32 -lsom
bash-4.0$ ldd a.out
libsom.so.1  =>  /opt/somtk/lib32/libsom.so.1
libCsup.so  =>   /usr/lib32/libCsup.so
libC.so.2  =>    /usr/lib32/libC.so.2
libCio.so.1  =>  /usr/lib32/libCio.so.1
libc.so.1  =>    /usr/lib32/libc.so.1
libpthread.so  =>        /usr/lib32/libpthread.so
libm.so  =>      /usr/lib32/libm.so

bash-4.0$ ./a.out
An instance of SOMClassMgr at address 1404460
{
SOMClass(1,6)
metaclass=SOMClass
SOMObject(1,7)
metaclass=SOMClass
SOMClassMgr(1,4)
metaclass=SOMClass
}
bash-4.0$


So there is now no excuse for not writing WorkPlaceShell for IRIX.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
I have a default install of neko_groff. I have very limited *roff knowledge except what I need to write man pages using existing macros.

I was rather hoping somebody could just confirm my findings, and ideally compare the output with native SGI provided nroff.
Land of the Long White Cloud and no Software Patents.
PymbleSoftware wrote:
..and more popular stuff like CORBA is in nekoware as well


This version does use IIOP 1.0, and I have had Java CORBA clients communicating with it. No SSL or security though.

I'm looking at ways of publishing the source at the moment, google code looks like a reasonable service.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
vishnu wrote:
The author has some really interesting things to say about C99 with respect to C++, little of which I agree with but interesting nonetheless... :mrgreen:


I agree with much of what he's saying, basically the C++ object model is not very good at providing binary compatibility over time for modules compiled by different vendors. It suffers from from the "fragile base class" problem, Objective C suffers a similar problem, change the size of a parent class by adding a field and you break existing compiled descendents. Also naming mangling is not consistent between compilers. If you are exporting C++ entry points you are asking for trouble.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
vishnu wrote:
C++ has always stressed the importance of hiding implementation details, yes?


Does nobody appretiate the irony of the recommended solution to C++ weaknesses is to pretend to all code outside your compiled module that you are not using C++ by only exposing a procedural interface? :)

One of the places Java and .NET have really succeeded is by being able to properly support object-orientated APIs at the binary level and supported directly by the compilers. You can take somebody elses JAR or assembly and just use it, and don't have to recompile even when they make major changes.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
That is really cool, it looks like awf may do it.

Now, how do you make it not print "UNIX Programmer's Manual" ( as in I want to format the relnotes ).
Land of the Long White Cloud and no Software Patents.
kubatyszko wrote:
C++ for a change ended (or rather started) up with a bunch of compilers - some different almost as if it were for another language (think GCC vs MSVC) - even though there was "one standard" the platform differences and other stuff made it difficult to follow.


The standard was at the source code level rather than the generate code or ABI, eg what a vtable would look like or what name mangling to use. The piece that was missing was an OO ABI. Both COM and SOM provided this but both stayed proprietary, but did allow object orientated software to interoperate at the binary level even in different languages. COM was the cheap and cheerful one that did not actually need a runtime but it's language interoperability failed for any C++ compiler that did not generate a vtable that matched COM's expectations.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
Can anything mount the drives from the G5?

Is this SMB, NFS or AFS?

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
I would look at what options you have for sharing from the G5.

http://hintsforums.macworld.com/archive ... 53861.html

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
If the function does not know the dimensions you will need to pass those in, and if you have an arbitrary number of dimensions those need to be passed in an array along with another count of the number of dimensions.
Land of the Long White Cloud and no Software Patents.
Code:
bash-3.00$ oslevel -s
5300-04-00-0000
bash-3.00$ cat /usr/dt/palettes/Default.dp
#ed00a8007000
#9900991b99fe
#89559808aa00
#500056006500
#c600b2d2a87e
#49009200a700
#b70087008d00
#938eab73bf00

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
This is really excellent news, looking forward to getting CDE up and running on my newly arrived Raspberry Pi.

It is ironic that nowadays Motif+CDE is considered lightweight! :)

A big thank you to zizban.
Land of the Long White Cloud and no Software Patents.
To be contemporary, it should have been a CVS repository...
Land of the Long White Cloud and no Software Patents.
With the release of CDE I see no reason for "dtterm" not running on MacOSX. Except if you are on Mountain Lion of course.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
alexott wrote:
porter wrote:
Except if you are on Mountain Lion of course.

Why? XQuartz handles apps same as X11.app did.


Cool, I stand corrected said the main in the orthopedic shoes.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
Yes, its done by having having the relnotes in a standard place and format. They are compiled like man pages.

As the manpage for relnotes says

Code: Select all

FILES
/usr/relnotes/<product>/TC       table of contents file for <product>
/usr/relnotes/<product>/ch*.z    release notes for <product>


as an example from my somtk project

Code: Select all

/usr/relnotes/somtk
bash-4.0$ ls
TC     ch1.z  ch2.z  ch3.z  ch4.z  ch5.z
bash-4.0$ cat TC
chap    title
1       Introduction
2       Installation
3       Environment
4       License for somFree
5       License for cpp from lcc
Land of the Long White Cloud and no Software Patents.
... and N32 shared libraries should go into /usr/nekoware/lib32
Land of the Long White Cloud and no Software Patents.
Finally published on SF .

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
https://sourceforge.net/projects/docshell/

I think you would like it when it's done.

That is a real screen shot of a real program running on my octane and really opening a real OpenDoc document.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
duck wrote:
Eh, Athena?-)


Will be Motif. :)

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
hamei wrote:
porter wrote:
So there is now no excuse for not writing WorkPlaceShell for IRIX.

Porter, it's not nice to bait the little fishies :)


Some good folk are having a go at building/porting XWorkplace ontop of somFree! Very keen to assist them.

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2
vishnu wrote:
hoping that the open sourcing of Motif will bring it back from extinction... :lol:


... and don't forget, now with added CDE!

_________________
:Indy: :Indigo2IMP: :Octane: :Indy: 4xRS6K 2xHP9K 6xSUN 1xDEC 14xMAC 7xPC 2xPS2