Re: [fpc-pascal] Memoryleak in SQLite3db.TSqlite?

2013-03-12 Thread Michael Fuchs

Am 11.03.2013 16:27, schrieb Michael Van Canneyt:

Can anybody apply this patch to the trunk?


Done.


Thank you.


Michael

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Set size limit

2013-03-12 Thread Mark Morgan Lloyd

Ewald wrote:

Once upon a time, Mark Morgan Lloyd said:

No, because the elements in a set are dictated by their position. A
set that can contain anything between 0 and 256 elements occupies 8
bytes in memory with the (bit representing the) 0 element at one end
and the (bit representing the) 256 element at the other, a set to
contain up to (say) 257 elements would require more space and that's
not supported.


Probably a typo, but 8 bit * 8 bytes = 64 elements. So I suppose you
mean `[...] occupies 32 bytes in memory [...]`?

Just so nobody gets confused :-)


Definitely a typo, or rather the fingers running ahead of the brain. I 
was thinking of various compilers I'd come across that ordered things 
differently and how best to not imply that [0] invariably mapped onto $0001.


--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Porting C macro

2013-03-12 Thread Darius Blaszyk
 

Flávio Etrusco schreef op 12 mrt '13: 

 On 3/11/13, Darius Blaszyk
dhkblas...@zeelandnet.nl wrote:
 
 I'm stuck porting a macro from
C. Below is the original define. The part I'm struggeling with is the
right most part after the - sign. #define GETNEXT(x) ((LList *)(((char
*) x) - ((char *)  (((LList *)0)^.next Does anyone know what is
meant with the define? Obviously LList is a linked list struct that has
a prev and next variable. But what does the  and 0 mean? Appreciate any
help. Regards, Darius
 
 AFAICS they mean address and nil,
respectively, so that part will
 return the offset of next inside and
item of LList.
 
 -Flávio

So here is what I made based on your and
Henry's mail. However still it does not seem to work, although other
ported code might be at fault of course :)

//#define GETNEXT(x) ((LList
*)(((char *) x) - ((char *)  (((LList *)0)-.next
function
GETNEXT(x: pLList): pLList; inline;
begin
 exit(pLList(pchar(x) -
pchar(pLList(nil)^.next)));
end; 

And let LList be declared as:

LList
= record
 len: integer;
 next, prev: pLList;
 name: PChar;
 nextname:
PChar;
 flag: integer;
end; 

Then I still don't understand what this
does: 
 if list^.next  nil then
 list^.nextname :=
GETNEXT(list^.next)^.name;

Regards, Darius ___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

[fpc-pascal] fcl-xml

2013-03-12 Thread dev . dliw
Hi,
working with fcl-xml some questions came together. Every hint is appreciated.

1.
No matter what I do and which (short  valid) xml file I use - getElementById 
is always nil (tested with trunk and latest stable 2.6.2) and the same applies 
to TXMLDocument.IDs.
I tried with ReadXMLFile and TDOMParser with different options - but the 
result is always the same.

Is getElementById supposed to work properly or is it something that needs to 
be implemented?
Trying to understand what the parser does (not that easy), I got the feeling 
that no Hashtable for the IDs is created  - can someone with more insight 
comment on that?

2.
Is there a way to tell WriteXMLFile *not* to use indentation?

3.
What is the state of XPath?
The readme says 'Should be fairly completed' - can I assume it works for 
simple tasks?

Many thanks for any hint,
d.l.i.w


___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] JSON me - blind again?

2013-03-12 Thread Reinier Olislagers
Hi list,

(FPC 2.6.0 or trunk)

Been fiddling a bit too long and strongly suspect PEBKAC/PICNIC (and my
seemingly perennial refusal to adapt to Object Pascal's way of dealing
with object references).

Thanks for your suggestions!


See the === marks below

var
  CurrentPage: integer;
  RequestResult: THttpResult;
  CommJSON: TJSONObject;
begin
  result:=INVALIDID;
  CommJSON:=TJSONObject.Create;
  try
try
// do an HTTP request and get a JSONData back.
//
RequestResult:=HttpRequestWithData(CommJSON,FCGIURL+'document/',rmPost);
  if RequestResult.Code200 then
  begin
//snip error handling
  end
  else
  begin
//=== the line below works - so CommJSON is a valid object, right?
if Assigned(CommJSON) then
begin
// however, the next line gives a runerror(210): no vmt found
  if (CommJSON.JSONType=jtObject) then
  begin
if (CommJSON.IndexOfName('documentid',false)-1) then
  result:=CommJSON.Integers['documentid'];
  end;
end;
  end;


I'm not confident about
function HttpRequestWithData(AData: TJSONData; const AUrl: string;
  const AMethod: TRequestMethod; const AContentType: string): THttpResult;
...
  FreeAndNil(AData);
  VData.Position := 0;
  VParser := TJSONParser.Create(VData);
  try
try
  AData := VParser.Parse;
// so it destroys the object passed to it and recreates it
// but AData.JSONType does seem to be JSONObject...
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] JSON me - blind again?

2013-03-12 Thread Michael Van Canneyt



On Tue, 12 Mar 2013, Reinier Olislagers wrote:


Hi list,

(FPC 2.6.0 or trunk)

Been fiddling a bit too long and strongly suspect PEBKAC/PICNIC (and my
seemingly perennial refusal to adapt to Object Pascal's way of dealing
with object references).

Thanks for your suggestions!


See the === marks below

var
 CurrentPage: integer;
 RequestResult: THttpResult;
 CommJSON: TJSONObject;
begin
 result:=INVALIDID;
 CommJSON:=TJSONObject.Create;
 try
   try
// do an HTTP request and get a JSONData back.
//
RequestResult:=HttpRequestWithData(CommJSON,FCGIURL+'document/',rmPost);
 if RequestResult.Code200 then
 begin
//snip error handling
 end
 else
 begin
//=== the line below works - so CommJSON is a valid object, right?
   if Assigned(CommJSON) then


It is assigned, but not necessarily valid. If you freed CommJSON but did not 
nil it, it is still'assigned'.


   begin
// however, the next line gives a runerror(210): no vmt found
 if (CommJSON.JSONType=jtObject) then
 begin
   if (CommJSON.IndexOfName('documentid',false)-1) then
 result:=CommJSON.Integers['documentid'];
 end;
   end;
 end;


I'm not confident about
function HttpRequestWithData(AData: TJSONData; const AUrl: string;
 const AMethod: TRequestMethod; const AContentType: string): THttpResult;


Ehm. This must be

 function HttpRequestWithData(OUT AData: TJSONData; const AUrl: string;
  const AMethod: TRequestMethod; const AContentType: string): THttpResult;

Because you are passing BACK a reference!

Michael.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Michael Van Canneyt



On Tue, 12 Mar 2013, dev.d...@gmail.com wrote:


Hi,
working with fcl-xml some questions came together. Every hint is appreciated.

1.
No matter what I do and which (short  valid) xml file I use - getElementById
is always nil (tested with trunk and latest stable 2.6.2) and the same applies
to TXMLDocument.IDs.
I tried with ReadXMLFile and TDOMParser with different options - but the
result is always the same.

Is getElementById supposed to work properly or is it something that needs to
be implemented?
Trying to understand what the parser does (not that easy), I got the feeling
that no Hashtable for the IDs is created  - can someone with more insight
comment on that?


It should be filled ? 
The XMLTextReader creates the map, and passes it on to the final document.



2.
Is there a way to tell WriteXMLFile *not* to use indentation?


No.



3.
What is the state of XPath?
The readme says 'Should be fairly completed' - can I assume it works for
simple tasks?


This I do not know.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Mattias Gaertner
On Tue, 12 Mar 2013 10:39:35 +0100
dev.d...@gmail.com wrote:

 Hi,
 working with fcl-xml some questions came together. Every hint is appreciated.
 
 1.
 No matter what I do and which (short  valid) xml file I use - getElementById 
 is always nil (tested with trunk and latest stable 2.6.2) and the same 
 applies 
 to TXMLDocument.IDs.
 I tried with ReadXMLFile and TDOMParser with different options - but the 
 result is always the same.
 
 Is getElementById supposed to work properly or is it something that needs to 
 be implemented?
 Trying to understand what the parser does (not that easy), I got the feeling 
 that no Hashtable for the IDs is created  - can someone with more insight 
 comment on that?

It seems to be started, but not finished.
I have not written it, just looked at the implementation.

 
 2.
 Is there a way to tell WriteXMLFile *not* to use indentation?

No.

 
 3.
 What is the state of XPath?
 The readme says 'Should be fairly completed' - can I assume it works for 
 simple tasks?

Yes.

Mattias
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Mattias Gaertner
On Tue, 12 Mar 2013 11:52:06 +0100 (CET)
Michael Van Canneyt mich...@freepascal.org wrote:

[...]
  Is getElementById supposed to work properly or is it something that needs to
  be implemented?
  Trying to understand what the parser does (not that easy), I got the feeling
  that no Hashtable for the IDs is created  - can someone with more insight
  comment on that?
 
 It should be filled ? 
 The XMLTextReader creates the map, and passes it on to the final document.

Normally getElementById should work in the DOM, not only when reading
a xml document.

Mattias
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Michael Van Canneyt



On Tue, 12 Mar 2013, Mattias Gaertner wrote:


On Tue, 12 Mar 2013 11:52:06 +0100 (CET)
Michael Van Canneyt mich...@freepascal.org wrote:


[...]

Is getElementById supposed to work properly or is it something that needs to
be implemented?
Trying to understand what the parser does (not that easy), I got the feeling
that no Hashtable for the IDs is created  - can someone with more insight
comment on that?


It should be filled ?
The XMLTextReader creates the map, and passes it on to the final document.


Normally getElementById should work in the DOM, not only when reading
a xml document.


Correct, but since OP was using the read methods, it should work ?

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Re: JSON me - blind again?

2013-03-12 Thread Reinier Olislagers
On 12-3-2013 11:44, Michael Van Canneyt wrote:

Thanks for the help, Michael.

 On Tue, 12 Mar 2013, Reinier Olislagers wrote:
 //=== the line below works - so CommJSON is a valid object, right?
if Assigned(CommJSON) then
 
 It is assigned, but not necessarily valid. If you freed CommJSON but did
 not nil it, it is still'assigned'.
Understood. Then it has a pointer pointing to whatever (probably the
object's former memory location).

 I'm not confident about
 function HttpRequestWithData(AData: TJSONData; const AUrl: string;
  const AMethod: TRequestMethod; const AContentType: string): THttpResult;
 
 Ehm. This must be
 
  function HttpRequestWithData(OUT AData: TJSONData; const AUrl: string;
   const AMethod: TRequestMethod; const AContentType: string): THttpResult;
 
 Because you are passing BACK a reference!

Sorry. What I hadn't attached is the first part where the request is
built up:
if Assigned(AData) then
begin
  VHttp.RequestBody := TMemoryStream.Create;
  VJSON := AData.AsJSON;
  VHttp.RequestBody.Write(Pointer(VJSON)^, Length(VJSON));
  VHttp.RequestBody.Position := 0;
end;

... changing the parameter to var...

function HttpRequestWithData(var AData: TJSONData; const AUrl: string;
  const AMethod: TRequestMethod; const AContentType: string): THttpResult;

... and changing the calling objects from TJSONObject to TJSONData
seemed to do the trick.

Thanks a lot.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Re: JSON me - blind again?

2013-03-12 Thread Michael Van Canneyt



On Tue, 12 Mar 2013, Reinier Olislagers wrote:


On 12-3-2013 11:44, Michael Van Canneyt wrote:

Thanks for the help, Michael.


On Tue, 12 Mar 2013, Reinier Olislagers wrote:

//=== the line below works - so CommJSON is a valid object, right?
   if Assigned(CommJSON) then


It is assigned, but not necessarily valid. If you freed CommJSON but did
not nil it, it is still'assigned'.

Understood. Then it has a pointer pointing to whatever (probably the
object's former memory location).


I'm not confident about
function HttpRequestWithData(AData: TJSONData; const AUrl: string;
 const AMethod: TRequestMethod; const AContentType: string): THttpResult;


Ehm. This must be

 function HttpRequestWithData(OUT AData: TJSONData; const AUrl: string;
  const AMethod: TRequestMethod; const AContentType: string): THttpResult;

Because you are passing BACK a reference!


Sorry. What I hadn't attached is the first part where the request is
built up:
   if Assigned(AData) then
   begin
 VHttp.RequestBody := TMemoryStream.Create;
 VJSON := AData.AsJSON;
 VHttp.RequestBody.Write(Pointer(VJSON)^, Length(VJSON));
 VHttp.RequestBody.Position := 0;
   end;


Yes, but as per your code: you free and rebuild:

  FreeAndNil(AData);
  VData.Position := 0;

- so you change the parameter, and thus you need a var/out

Anyway, glad it is fixed.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread dev . dliw
Hi,
 The XMLTextReader creates the map, and passes it on to the final document.

// Trunk
procedure TLoader.ProcessXML(ADoc: TDOMDocument; AReader: TXMLTextReader);
begin
  [...]

  doc.IDs := reader.IDMap;
  reader.IDMap := nil;
end;

// 2.6.2
=== snip ===

  doc.IDs := FIDMap;
  FIDMap := nil;

==

Just rechecked again...
The debugger clearly says, that reader.IDMap / FIDMap is nil...
[Before the second assignement - of course :) ]

It seems to be started, but not finished.
If so, what needs to be done?

Regards,
d.l.i.w


___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Mattias Gaertner
On Tue, 12 Mar 2013 12:21:10 +0100
dev.d...@gmail.com wrote:

[...]
 Just rechecked again...
 The debugger clearly says, that reader.IDMap / FIDMap is nil...
 [Before the second assignement - of course :) ]
 
 It seems to be started, but not finished.
 If so, what needs to be done?

Maybe the bug is that it checks case sensitive:

procedure TXMLTextReader.ParseAttlistDecl;
...
  Found := FSource.Matches(AttrDataTypeNames[dt]);
...

function TXMLCharSource.Matches(const arg: WideString): Boolean;
begin
  Result := False;
  if (FBufEnd = FBuf + Length(arg)) or Reload then
Result := CompareMem(Pointer(arg), FBuf, Length(arg)*sizeof(WideChar));
  if Result then
  begin
Inc(FBuf, Length(arg));
if FBuf = FBufEnd then
  Reload;
  end;
end;


Mattias
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] [OT] Sven, don't defect to the dark side!

2013-03-12 Thread Reinier Olislagers
Permitting myself a small tongue-in-cheek interruption of the regular
activities on this mailing list:

Sad enough that you're almost no student anymore (presumably equals
having to do real work instead of improving FPC and incidentally
studying), but this is really going to far ;) :

http://www.reactos.org/archives/public/ros-dev/2013-March/016063.html

Don't leave us - rather leave these C people to do whatever they do ;)

Reinier
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread dev . dliw
 Maybe the bug is that it checks case sensitive:
 
 procedure TXMLTextReader.ParseAttlistDecl;
 ...
   Found := FSource.Matches(AttrDataTypeNames[dt]);

ParseAttlistDecl isn't called a single time...
- to me it sounds like Parse Attribute *declaration* - and I don't have a 
DTD (the file is actually HTML).

When switching Validate *on*, there are lot of DoError calls - but don't know 
if this is related...

From what I see: (trunk)
AddId is only called from ValidateAttrValue
ValidateAttrValue is only called from ValidateCurrentNode
and this is only when the parser does validation...

For me there is missing something in ParseAttribute(ElDef: TElementDecl);

===
  if Assigned(ElDef) then
  begin
AttDef := ElDef.GetAttrDef(attrName);
// mark attribute as specified
if Assigned(AttDef) then
  FAttrDefIndex[AttDef.Index] := FAttrTag;
  end
  else
AttDef := nil;
===

ElDef is not assigned, so AttDef is nil...
AttDef holds TAttrDataType which should be recognised as dtId...

I hope I got it right so far - but still don't know what the actual problem 
is...

-

That't what I'm currently testing with:

=== test.xml ===

?xml version=1.0 encoding=UTF-8?
html
  div id=testTest/div
/html

=== test.pas ===

program test;

{$mode objfpc}{$H+}

Uses
  Classes, XMLRead, DOM;

Var
  Doc : TXMLDocument;
  Parser : TDOMParser;
  Source : TXMLInputSource;
  List   : TStringList;

begin
  List := TStringList.Create;
  List.LoadFromFile('test.xml');

  Parser := TDOMParser.Create;
  try
Parser.Options.IgnoreComments := true;
//Parser.Options.Validate := true;

Source := TXMLInputSource.Create(List.Text);
try
  Parser.Parse(Source, Doc);
finally
  Source.Free;
end;
  finally
Parser.Free;
  end;

  WriteLn(assigned(Doc.IDs));  // output: false

  List.Free;
end.

==
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread dev . dliw
A little side note to my statement:
 and I don't have a DTD

In this case the behaviour of the parser is even right...

W3C:
Note: Attributes with the name ID or id are not of type ID unless so 
defined
--
http://stackoverflow.com/questions/3423430/java-xml-dom-how-are-id-attributes-special

But that's not the solution to my problem... :(
d.l.i.w
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Daniel Gaspary
Using Xpath I believe would be something like this:

function ElementById(id: string; doc: TXMLDocument): TDOMElement;
var
   v: TXPathVariable;
begin
 result:=nil;
 try
v:=EvaluateXPathExpression('//*[@id=' + QuotedStr(id)+']',
 doc.DocumentElement);

result:=TDOMElement(v.AsNodeSet[0]);
 finally
FreeAndNil(v);
 end;
end;

On Tue, Mar 12, 2013 at 10:42 AM,  dev.d...@gmail.com wrote:
 A little side note to my statement:
 and I don't have a DTD

 In this case the behaviour of the parser is even right...

 W3C:
 Note: Attributes with the name ID or id are not of type ID unless so
 defined
 --
 http://stackoverflow.com/questions/3423430/java-xml-dom-how-are-id-attributes-special

 But that's not the solution to my problem... :(
 d.l.i.w
 ___
 fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
 http://lists.freepascal.org/mailman/listinfo/fpc-pascal
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] [OT] Sven, don't defect to the dark side!

2013-03-12 Thread Mark Morgan Lloyd

Reinier Olislagers wrote:

Permitting myself a small tongue-in-cheek interruption of the regular
activities on this mailing list:

Sad enough that you're almost no student anymore (presumably equals
having to do real work instead of improving FPC and incidentally
studying), but this is really going to far ;) :


Studying isn't over until the examiner's sung :-)

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Daniel Gaspary
On Tue, Mar 12, 2013 at 11:17 AM, Daniel Gaspary dgasp...@gmail.com wrote:
 Using Xpath I believe would be something like this:

I was missing an If:

function ElementById(id: string; doc: TXMLDocument): TDOMElement;
var
   v: TXPathVariable;
begin
 result:=nil;
 try
v:=EvaluateXPathExpression('//*[@id=' + QuotedStr(id)+']',
 doc.DocumentElement);

with v.AsNodeSet do
begin
 if Count0
 then
 result:=TDOMElement(Items[0]);
end;
 finally
FreeAndNil(v);
 end;
end;
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread dev . dliw
  Using Xpath I believe would be something like this:
 I was missing an If:
 
 function ElementById(id: string; doc: TXMLDocument): TDOMElement;
 var
v: TXPathVariable;
 begin
[..]
 end;

This does indeed work - thank you :)
It's an acceptable solution for me, as I will need XPath anyway.

Still I think that TDOMDocument.getElementById is better performance-wise - 
and I don't see a reason why it shouldn't work if TDOMDocument is created by 
the XMLParser - even if no definition is given...

Is this worth a feature request / bug on mantis?
d.l.i.w
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread Michael Van Canneyt



On Tue, 12 Mar 2013, dev.d...@gmail.com wrote:


Using Xpath I believe would be something like this:

I was missing an If:

function ElementById(id: string; doc: TXMLDocument): TDOMElement;
var
   v: TXPathVariable;
begin
[..]
end;


This does indeed work - thank you :)
It's an acceptable solution for me, as I will need XPath anyway.

Still I think that TDOMDocument.getElementById is better performance-wise -
and I don't see a reason why it shouldn't work if TDOMDocument is created by
the XMLParser - even if no definition is given...

Is this worth a feature request / bug on mantis?


Yes.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] fcl-xml

2013-03-12 Thread dev . dliw
  Is this worth a feature request / bug on mantis?
 
 Yes.

Issue #24032

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] [OT] Sven, don't defect to the dark side!

2013-03-12 Thread Sven Barth
First and foremost: this is very offtopic, so I'm moving this over to 
fpc-other. If someone answers to my mail, then please ensure that you 
only answer to fpc-pascal. Thank you.


On 12.03.2013 13:57, Reinier Olislagers wrote:

Sad enough that you're almost no student anymore (presumably equals
having to do real work instead of improving FPC and incidentally
studying),


I'm really looking forward to the time I'm no student anymore. First I'm 
finally able to earn a nice amount of money and second I'll have 
regulated worktimes and don't need to use my free time (aka FPC time) to 
do homework or other things for university. This will finally be the 
time when the *real* fun on FPC development starts. :D



but this is really going to far ;) :

http://www.reactos.org/archives/public/ros-dev/2013-March/016063.html

Don't leave us - rather leave these C people to do whatever they do ;)


Where did I wrote that I'd leave FPC? If you'd read the ReactOS forums 
as well you'd know that I'm happily promoting that I'm a FPC developer 
when there is the chance... [Note: I'm aware that you're joking around, 
so don't take the tone of the previous paragraph to personally ^^]


Nevertheless I like ReactOS very much. I'm a huge fan of the NT kernel 
(just in case: I'm not talking about the Win32 API here) and one of my 
dreams would be a new NT subsystem written in FPC with an as much as 
possible Pascal userland (why do you think I implemented the NativeNT 
target?). And if you look at the projects they are suggesting for GSOC 
2013 there are very nice ones between them. The ones I personally would 
consider myself able to implement (the SSH server and the GUI installer) 
could even be implemented in Pascal (though this wouldn't help the 
ReactOS devs). So while this leaves out the GUI installer a SSH server 
for Windows and ReactOS could nevertheless be implemented independently 
of GSOC and the ReactOS project as a Pascal open source project...
Things that I'd also like to see for ReactOS would be a port of DDEkit 
which would allow the usage of Linux drivers (compiled from source) on a 
NT system and just because I could a port of ReactOS to m68k (this 
would need some more work though than just porting the OS, e.g. 
patching the binutils and maybe gcc...).


But there is also another side of the story though this is not related 
to the mail linked above: As my current company has (again) decided to 
move away from Delphi (to .Net with C#) I myself will very likely change 
my workplace at the end of my study as well. And the company I plan to 
work for is developing their own realtime microkernel operating system 
though they are working with C++. But they are also supportive of my 
work with FPC. The boss originally developed in Pascal as well and 
during the time I wrote my bachelor thesis for them two years ago I 
managed to port FPC natively to their POSIX layer as the first compiler 
ever. :) And I'll at least try if I could get a bit of time a week to be 
paid for work on FPC. And who knows... maybe I'll someday rewrite their 
kernel in Pascal :P
Also it might be useful to use a different language for work than for 
hobby: you learn to appreciate your main language more (or in case of 
C++ more importantly the IDE...).


And to close this mail I'll misuse the famous quote of an even more 
famous half-Vulcan:


I was and always shall be: a Pascal programmer.

Regards,
Sven
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal