<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Ok on preserving most/all of these but note I'm not keen on preserving like anything dealing with structs or time_t.<BR>
There are various arguments for/against.<BR>
This "systems" language interoperates well with C, directly, IF you control the C.<BR>
Thus we have wrappers. We almost never interface directly with "the OS".<BR>
  Then again, same is true of C. Actual "kernels" have custom calling mechanisms, which gets wrapped in C.<BR>
I'm not sure we should provide a general set of wrappers, or leave it to each user to write his own,<BR>
  or provide some simple small set. Leaving it to each user is error prone, granted.<BR>
The historical implementation here was awful and *really* *not* the way.<BR>
The question then is what should the implementation be.<BR>
 <BR>
 <BR>
 - Jay<BR><BR> <BR>> Date: Mon, 12 Apr 2010 10:12:12 +0200<BR>> From: wagner@elegosoft.com<BR>> To: m3devel@elegosoft.com<BR>> Subject: Re: [M3devel] unused/little used stuff in m3core/unix?<BR>> <BR>> Quoting Jay K <jay.krell@cornell.edu>:<BR>> <BR>> > Following are not used:<BR>> ><BR>> > fchmod<BR>> > fchown<BR>> > getpagesize<BR>> > sbrk<BR>> > creat<BR>> > isatty<BR>> ><BR>> > That isn't necessarily all.<BR>> ><BR>> > Some are used only in:<BR>> ><BR>> > C:\dev2\cm3.2\m3-libs\libm3\src\os\POSIX<BR>> > e.g.<BR>> > chdir<BR>> > getdtablesize<BR>> > execve<BR>> ><BR>> > Some are used only in the unused m3-pkgtools directory or by cvsup.<BR>> > e.g. umask<BR>> ><BR>> > These all traffic in pretty "plain" types (e.g. no structs, no <BR>> > time_t). So just keep them all?<BR>> <BR>> Yes. These are standard POSIX or Unix legacy interfaces.<BR>> Do not throw them out.<BR>> <BR>> > Note of course, uses of these somewhat or significantly inhibit<BR>> > porting to native Win32.<BR>> <BR>> As these are POSIX, that is to be expected.<BR>> <BR>> > Account for somewhat arbirary Posix-specific code outside the cm3 tree<BR>> > and err toward wrapping stuff that is easy?<BR>> ><BR>> > Or push the idea that m3core/libm3 are a good (and safe) portability <BR>> > layer and only provide what they need, and<BR>> > gradually move them towards C to reduce their needs?<BR>> <BR>> As a systems programming language, we should support standard OS<BR>> interfaces IMO.<BR>> <BR>> Olaf                                      </body>
</html>