Taligent

From DisNCord Community Wiki
Jump to navigation Jump to search

Taligent was an American corporation, initially founded as a joint venture, between Apple Computer, Inc., and IBM Corporation, in March 1992, with Hewlett-Packard (HP) later becoming involved, in 1994.

The founding intention was take advanced, object-oriented software technology, developed as part of Apple's ill-fated "Pink" team, that was ostensibly developing a replacement for the legacy Mac OS, and bring it to a wider market.

Early Days

The company's branding was developed by the New York-based WantBranding's Brand Strategy & Naming team, along with that for Kaleida (a sister company, focussing on multimedia development products, also launched, around the same time, by Apple, and IBM), and much of the initial Pink engineering team (around 150 members), and associated operational staff, were transferred, from Apple.

Although Taligent ostensibly had an initial public staff count, of 170 members (the majority, being the aforementioned engineers), from the start, it wouldn't gain an initial chairman/CEO, until 24th February 1992, when Joseph M. Guglielmi was transferred, from IBM.

In 1993, Taligent would present at ComDex, in Las Vegas, for the first time, as a joint-venture.

Initial Product

The company initially sought to release a new operating system (TalOS - variously, Taligent Object System/Taligent Object Services), and associated application development environment (Taligent Development Environment/TalDE), and runtime environment (Taligent Application Environment/TalAE), that would have been based on a brand-new, proprietary microkernel, named Opus (or, Opus/2). It is known, that engineers were working on developing abstractions, around 1991-1992, for this kernel, that was alluded to, in unpublished, internal reports, that were mentioned as references, in the March 1995 Mach paper.

To date, no copies of this have surfaced.

User Interface Designs

An alleged final demonstration ("The Cutting Edge Demo") of the user interface, and its sound effects were made, at the International Conference on Auditory Display, in 1996.

Other than the mockup UI, shown in the ICAD article (which is reused, in monochrome, in Taligent-related books), very few videos, screenshots, or audio samples exist. (A 2006 RoughlyDrafted article shows another mockup, that more closely resembles the Mac OS 7.x Finder, including static menubar, Chicago font, mixed-size icons, with customisable colour labels, and BeOS-like window titlebars, but it is unknown, when a decision was made, to recast the UI, with a more NeXTSTEP/RISC OS-like floating menu palette).

Several prototype icons, and design elements, of the Finder-like design were spearheaded by Robin Silberling, during the initial development, at Apple, during the early '90s.

One of the rarest public demonstrations of the TalOS UI, briefly captured on video, is demonstrated at 4:04, in a promotional YouTube video, from ComDex 1994.

Relationship to MacApp

The initial Pink APIs are roughly based on those of the MacApp framework, which was initially written in Pascal, for Mac OS, before being gradually ported to C++, and, later, Windows, in both style, and substance, but have been substantially extended, to produce a viable set of APIs, for implementing a general-purpose operating system.

The public distribution of MacApp 2.0 (released in 1990), on CD-ROM seems to contain some Pink-related executable code, object file names, mangled linker symbols, logs, and strings, in otherwise unallocated HFS sectors, that does not belong to any known files, or resource forks (it is not preserved, when copying the contents of the CD, to a new HFS+, or FAT16 volume, under Mac OS 9, from examining an both ISO of the CD, and the destination volume, using the UNIX strings utility).

It is unknown, which version of Pink, this code pertains to, and the PhotoRec utility doesn't contain signatures, capable of matching any files on the CD, but unique mentions of strings such as: OpusBug, Name Server,TSurrogateSection, MPrimitiveClient, and qpIncludes the following: DiscoInferno OpusWrappers PsychoKiller Runtime Scream Tokens UtilityClasses and ZZText, which do not appear in any of the main MacApp files, or their resource forks, when copies using the Mac OS Finder, are made.

Mach Research

In March 1995, a paper was published, detailing the ambitions of Taligent's engineers, in creating new, object-oriented C++ wrappers, for Mach 3 kernel APIs, presumably to replace their older wrappers, for the proprietary Opus/2 microkernel. It is unknown, if this work was later intended to inform any potential port to IBM's grand WorkPlace OS initiative, or if it was simply a way of adapting to the trend of OS developers evaluating Mach, as a "wave of the future" technology.

HP Involvement

HP was not initially one of the founding partners, but announced their plan to join, in January 1994, and purchased a 15% stake in the organisation, with a view to using Taligent's technology, in HP-UX. (The deal itself received regulatory clearance, a month later, and HP was able to gain a board seat, to influence the operation of Taligent's business).

Additionally, HP intended on licensing their OpenODB (object-oriented database) product, as well as Distributed Object Management Facility (DOMF) CORBA implementation, together with HP DCE/9000 (an implementation of OSF's Distributed Computing Environment (DCE)), as an alternative, to IBM's implementation, in the hopes of shipping it in a cut of TalOS, or TalAE, that was expected to arrive, by the end of 1995, or the start of 1996.

C++ Compiler Technology ("CompTech")

According to a blog post, by Rys McCusker, the name "CompTech" refers to the team, responsible for developing, and maintaining the compiler products, rather than the compiler itself, and there was a presumably-abandoned plan, to port Apple's experimental Dylan language compiler, and runtime, to the nascent TalOS.

It is claimed, on Wikipedia, that HP licensed, and released certain Taligent C++ compiler technology, as part of their ANSI C++ compiler, aCC/aC++, in addition to "some graphics libraries", and GDB source code, released as part of Apple Darwin mentions a shared Taligent, and HP-UX runtime ABI specification.

It has also been revealed, in public defect reports, that earlier versions of the HP aC++ Compiler have been used, to compile Taligent-supplied source code.

CommonPoint

CommonPoint was a rebranding, of the development tools, and application runtime environment, as it moved away from being an integrated operating system, wholly-developed by Taligent, to an environment that ran on top of third-party operating systems.

ToDo - Relationship to IBM VisualAge C++ 3.5/4.0, Open Class Libraries, OpenDoc, products for AIX, and OS/2, DCE, documentation, PinkMake

Due to delays, and quality issues, with some of Taligent's own tooling, and HP's SoftBench 3.0, the TakeFive Sniff+ development tools were licensed, and bundled with early versions of the Taligent Application Environment product, as an emergency replacement.

ToDo - Transition, from OS, to application suite/operating environment

CommonPoint, on AIX

The CommonPoint Application System, and associated development tools, were primarily developed, to run on AIX, and ported to other platforms. Very few copies of any versions are known to be available, presumably due to their high IBM-recommended prices.

CommonPoint for AIX Commemorative CDs

The Computer History Museum, in California, USA has a commemorative plaque, seemingly made from a wooden base, wrapped in a metal shell, holding standard jewel CD cases, containing CDs, with retail screen-printing.

The online description claims, that they were issued, for the shipment of CommonPoint(TM) application system, Version 1.0 for AIX, and cpConstructor(TM), Version 1.0 for AIX, but the only official photograph is low-resolution, and does not show both discs. Additionally, it is unknown if these discs actually contain the software, as the museum is presumably unwilling to extract them, from their mount, to examine their contents.

It is rumoured, that the discs may actually be blank, although without access to the physical artefact, and the permission of the Computer History Museum, it is difficult to determine the veracity of this claim.

The Power of Frameworks Book

As part of an initiative, to raise mindshare, and awareness of the CommonPoint products, Taligent released a book (ISBN 0-201-48348-3), that included a CD-ROM, and discussed the development of a simple spreadsheet application, for Windows, and OS/2, as well as a version, that was designed for the CommonPoint APIs.

Used copies of the book, have been found, on eBay, and online stores, of charitable organisations, and the text has been uploaded to the Internet Archive - but, no copies of the contents of the CD had been recovered (used copies were sometimes resold, without it included), and archived, until a copy of the book had been located, on the 11th January 2023, with the disc still sealed in the back.

CD Contents

A copy of the CD contents, as both a disk image, created with MacOS Disk Utility, and the files from the file system have been uploaded to the Internet Archive, as a SquashFS image. (This was originally uploaded as a ZIP archive, but got flagged by VirusTotal, as a false positive, and automatically removed).

The root of the file system contains README.TXT (ASCII text, with CRLF line terminators), PWRFW.EXE (MS-DOS executable, NE for MS Windows 3.x (EXE)), and POFSRC (a directory).

PWRFW.EXE is the main presentation, developed using Director for Windows Release 4.0.4. Due to containing 16-bit code, it will not run under CrossOver, and Rosetta 2, or under ReactOS, but should run, under Windows 2000. (README.TXT mentions them working, under Windows 3.1, with Win32s, Windows 95, and under OS/2, with caveats).

The POFSRC directory contains OS2, and WIN31 directories, with a shared structure:

/Volumes/CDMASTER/POFSRC/OS2:
POFSAMP1	POFSAMP2	POFSAMP3

/Volumes/CDMASTER/POFSRC/WIN31:
POFSAMP1	POFSAMP2	POFSAMP3

These subdirectories contain the C++ source/header files, Makefiles, sample executables/libraries, and associated resource files, for Windows 3.1, and OS/2:

/Volumes/CDMASTER/POFSRC/OS2/POFSAMP1:
CELLFORM.H	FRAMEWRK.H	GRID.H		NFORMAT.CPP	NGRID.H		S1.CMD		SAMPLE1.EXE	SAMPLE1.LNK	SAMPLE1.RES
FNUMBER.CPP	FRAMEWRK.HH	NCELL.CPP	NFORMAT.H	OS2TYPES.H	SAMPLE1.CPP	SAMPLE1.HLP	SAMPLE1.MAK	WELCOME.H
FNUMBER.H	FRAMEWRK.RCH	NCELL.H		NGRID.CPP	PUZZLE.ICO	SAMPLE1.DEF	SAMPLE1.IPF	SAMPLE1.RC

/Volumes/CDMASTER/POFSRC/OS2/POFSAMP2:
CELLFORM.H	FRAMEWRK.HH	NCELL.CPP	NFORMAT.H	NUMBER.DLL	OS2TYPES.H	SAMPLE2.CPP	SAMPLE2.HLP	SAMPLE2.MAK	TEXT.H
FORMATTE.DLL	FRAMEWRK.RCH	NCELL.H		NGRID.CPP	NUMFMTR.CPP	PUZZLE.ICO	SAMPLE2.DEF	SAMPLE2.IPF	SAMPLE2.RC	WELCOME.H
FRAMEWRK.H	GRID.H		NFORMAT.CPP	NGRID.H		NUMFMTR.H	S2.CMD		SAMPLE2.EXE	SAMPLE2.LNK	TEXT.CPP

/Volumes/CDMASTER/POFSRC/OS2/POFSAMP3:
CELLFORM.H	FORMATTE.DLL	FRAMEWRK.HH	HELLO.C		NFORMAT.CPP	NGRID.H		OS2TYPES.H	SAMPLE3.CPP	SAMPLE3.HLP	SAMPLE3.MAK
FNUMBER.CPP	FORMATTE.LIB	FRAMEWRK.RCH	NCELL.CPP	NFORMAT.H	NUMBER.DLL	PUZZLE.ICO	SAMPLE3.DEF	SAMPLE3.IPF	SAMPLE3.RC
FNUMBER.H	FRAMEWRK.H	GRID.H		NCELL.H		NGRID.CPP	NUMBER.LIB	S3.CMD		SAMPLE3.EXE	SAMPLE3.LNK	WELCOME.H

/Volumes/CDMASTER/POFSRC/WIN31/POFSAMP1:
FNUMBER.CPP	NCELL.CPP	NFORMAT.CPP	NGRID.CPP	SAMPLE1.CPP	SAMPLE1.EXE	SAMPLE1.RC	SAMPLE1.RH
FNUMBER.H	NCELL.H		NFORMAT.H	NGRID.H		SAMPLE1.DEF	SAMPLE1.IDE	SAMPLE1.RES

/Volumes/CDMASTER/POFSRC/WIN31/POFSAMP2:
NCELL.CPP	NFORMAT.CPP	NGRID.CPP	NUMFMTR.CPP	SAMPLE2.CPP	SAMPLE2.EXE	SAMPLE2.RC	SAMPLE2.RH	TEXT.H
NCELL.H		NFORMAT.H	NGRID.H		NUMFMTR.H	SAMPLE2.DEF	SAMPLE2.IDE	SAMPLE2.RES	TEXT.CPP

/Volumes/CDMASTER/POFSRC/WIN31/POFSAMP3:
NCELL.CPP	NFORMAT.H	NUMFMTR.CPP	RATIONUM.H	SAMPLE3.CPP	SAMPLE3.IDE	SAMPLE3.RH
NCELL.H		NGRID.CPP	NUMFMTR.H	RATNLFMT.H	SAMPLE3.DEF	SAMPLE3.RC	TEXT.CPP
NFORMAT.CPP	NGRID.H		RATIONUM.CPP	RFORMTTR.CPP	SAMPLE3.EXE	SAMPLE3.RES	TEXT.H

Taligent International Foundation Classes

The International Foundation Classes were jointly-copyrighted, by Taligent, and IBM, and have been used in several third-party products, developed for non-CommonPoint platforms.

iPlanet/Netscape Directory Server (which was since rebranded, several times), was known to be one of these, as a mention is made, in the documentation (as the "International Classes"), and a press release, from 14th May 1997 mentions, that the Collation Library component was ported, from Java, to C++, and licensed to Netscape. The same article also mentions Sun/JavaSoft integrating them into the Java Development Kit, Version 1.1.

Typically supplied with applications as a DLL, or static library file (libnls), that is either loaded at runtime, or linked, at build time, and consumes .ctx, and .txt pairs, named with ISO language codes, that can define names of months/countries/languages, time formats, currency symbols, and other language/culture/country-specific values, in a JSON-like syntax (although it does not strictly conform, to the JSON specification).

Versions written in Java, and C++ are known to exist.

Taligent Places for Project Teams

One of the few mass-market products, that was shipped, by Taligent, was "Places for Project Teams". This was a companion application, to Lotus Notes, for Windows, developed using Delphi, and ActiveX/OLE components (as opposed to the company's own, proprietary framework technology), that would have been sold, for a relatively-low price of $49 per-user (or, $390, for a pack of 10 licenses).

It was first announced, on the 27th January, 1997, for release, "in the second quarter of 1997", with a beta version being made available, upon announcement (which was supposed to expire, on the 1st May, 1997), and was officially intended to be compatible with Windows NT 3.51, or Windows 95, and Lotus Notes 4.1, as a baseline.

A 30-day trial copy of version 1.0, for Windows was recovered, from the WayBack Machine, and republished, as an Internet Archive artefact, recently. This is confirmed to run, on Windows Server 2003, and Windows NT 4.0, with a 4.x-series version of Lotus Notes.

Taligent WebRunner

Legacy

Being developed after the failure of CommonPoint, the developers of Symbian OS took inspiration from Taligent's coding style conventions, in designing their API surface, to have a consistent naming scheme (e.g. using "M", for Mix-in classes, and prefixing Type classes, with "T", amongst other conventions), and several developers from Taligent, later went to work for Symbian, in both its guise as a limited company, and as a non-profit foundation.

Taligent technology was also harvested, to produce the popular International Components for Unicode, which was later adopted by Apple, in a twist of fate, for MacOS/iOS, as well as Google, for Android, and most Linux distributions, and several packages of Sun/Oracle's Java APIs were either developed directly, by Taligent engineers, or were ported, and adapted, from code developed for Taligent products.

Some of the Open Source mathematics library code (e.g. ExpTable, LogTablelD, and some mathematical function-related code, in various audio drivers), in Apple Darwin, for PowerPC is derived from code developed for CommonPoint.

It could be argued, that the Genode project, is a spiritual successor, to CommonPoint, in trying to define a framework, for a microkernel-agnostic operating system, although its developers have not publicly stated this being one of their intentions.

Additional References