Re: [lazarus] Compile fails on project with long pathname (MacOS X)

2006-05-22 Thread L505

 Tom Verhoeff wrote:
  I recently upgraded to 0.9.14 and started a project, whose code
  is in a deeply nested directory tree with fairly long directory names,
  where one of the directory names contains a space.
 
  When compiling from the ide, this fails at the assembler.  It seems
  to report a cut off path (the part with the space is included), though
  this could only be in the message printed (and not in the argument that
  it received).
 
  Does anyone have an idea what is the problem here?

Yes, I've had all sorts of path chopping issues. Especially it occurs if you 
specify
the -o option to the compiler along with a -k option with some long paths 
involved. The
FPC compiler uses almost all shortstrings to pass options to the linker. The 
problem does
not occur until a total number of options add up to 255 - but it isn't as 
simple as just
counting all your options and adding them up to 255 - rather some options are 
passed to
the linker (such as -o) while others are sent other places, to for example the 
search
functions that verify directory/file location of units in the uses clause. Some 
limits 
are not even 255 but rather 50. If you read the fpc-devel list you will see 
what I mean 
when I say that I've had the same issues. 

It generally occurs on computers that have several hundred projects, because 
when you 
have this many projects you do use long paths - while most people out there 
don't have
hundreds/thousands of projects on their drive so the bug never pops up - or 
they just
learn to live with it - I had these issues since day one when I was a newbie to 
FPC
and I was blaming it on myself since I thought it was a newbie issue of my own. 

As more and more projects have been placed on my hard drive, the more the bug 
has
popped up over and over again. Back when my hard drive was not as loaded, it 
didn't occur much, but did occur.

It will require a lot of changes to the FPC source code since FPC source is 
heavily
reliant on shortstrings, and the compiler will be slower. All testing for this 
bug should
be done at the command line and the bug should be reported to FPC section 
rather than
Lazarus section.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Request for PR noise !

2006-05-20 Thread L505
 I'm a complete atheist and still share much of you POV because Brazil
 is largely (and my family is) Catholic (so I have some idea of what
 these people IMHO-stupid people think. Unfortunately, I don't know
 why,  intelligent + phylosophical + logicist  atheist...)

Belief is a wise wager. Granted that faith cannot be proved, what harm will 
come to you
if you gamble on its truth and it proves false? If you gain, you gain all; if 
you lose,
you lose nothing. Wager, then, without hesitation, that He exists.  -- Blaise 
Pascal

Being atheist means you beleive that he does not exist. This, in my opinion, 
is just
as bad as beleiving he does exist. Becuase you are saying you believe he 
doesn't exist.
But you don't know. Therefore, most atheists are labelling themselves in the 
wrong
category - IMO, all atheists should convert to agnostic.. which is much more 
intelligent of a decision, IMO.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Request for PR noise !

2006-05-20 Thread L505
 On Sat, 2006-05-20 at 14:37 +0300, Al Boldi wrote:
  
   Feel free to create OpenRAD based on FPC, gcc and lazarus ;)
 
  Lazarus isn't a language, it's a RAD. And a good one too!
 
  But it would be sad to see this effort being expended towards one language
  only.
 
  Lazarus is too good, not to be leveraged.
 
  Think about it!

 You have to turn it around: Lazarus could have become so good because
 it's written in Object Pascal.

 Pascal which offers a good basic, structured language which makes it
 easy to implement an advanced, complex system with a group of
 programmers in a relative short time.

Although readability is boosted I still find it takes years/months to make a 
complex
project that does anything worthwhile in Pascal - or any language. And many C++
programmers are genius types - who could care less if the language is slightly 
more messy,
because they have enough genius in them to understand it anyway. So it ends up 
being that
a C++ program is just as easy to maintain if you are genius. I'm not a genius 
and don't
want to exercise a brain part that I don't have to - so I use a more readable 
language.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Request for PR noise !

2006-05-20 Thread L505




 On 5/20/06, Joost van der Sluis [EMAIL PROTECTED] wrote:
  That programmers in other languages don't succeed in writing their own
  RAD, doesn't mean that we have to provide them with one, imho.
 
  But if someone else want to do that... be my guest. I'm not gonna do it.

 But then, people who like working with Lazarus might be forced to use
 other languages by those who pay us. This way we can make those people
 and also also us happy.

 Of course I don't think those who don't pass by this situation should
 be forced to help implementing it.

 The biggest problem is that I cannot see the advantage of adding c++
 for Lazarus for example, without allowing it to access LCL. This would
 make it just another text editor, and there is plenty already. Maybe a
 C++_to_pascal converter could help in this situation.


The problem with mixing language is that you spend tons of time making 
workarounds for the
difference between the languages. One or two similar languages like C and 
Pascal is not so
bad but when you try and integrate a dynamically typed language and a strong 
typed
language, and a few static and a few weak languages your IDE becomes one giant 
workaround
instead of a solid dedicated product. For example, if the IDE was to handle PHP 
- would
variables be declared in a strong typing fashion so that the IDE could parse 
the file and
find the var declaration? No. There is no var declaration in PHP. So what good 
is the
find declaration code tools item in the menu. So you'd have to remove that 
feature out
of the IDE just for PHP - hence taking time out to make the IDE a workaround, 
instead of
taking the time to do other things. And that bloats it up, with lots of 
workaround code.
Unless you use a plug-in system which may be very very complicated and very 
well thought
out - and even then, you still have to explain to the users how to download 
which plug-in
for which language - instead of just shipping them one easy to install IDE 
dedicated to
Pascal.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Request for PR noise !

2006-05-20 Thread L505
  Being atheist means you beleive that he does not exist.

 Certainly not. Not seeing something where there is nothing and where
 it is not necessary that there is something is not a belief, it is
 a knowledge. I don't not to believe that there is a Rammstein CD in
 orbit around Pluto, I do know there is none (but don't ask me to prove
 it, I cannot).

Does a dog have knowledge about colors?  Can a dog imagine red, orange, blue, 
green,
purple, violet, etc? A dog can only see certain shades - gray, some blue.

So if you asked a dog whether he believed red/orange/yellow/purple existed, the 
dog would
tell you that you are full of shit. Well, an agnostic dog, on the other hand 
would say I
don't know - I'm not sure - maybe you are right, maybe you are wrong.

Therefore you are agnostic, not atheist. Agnostic is not knowing, and let me 
tell you
100 percent of the world does not know anything about how or where the world 
was created,
and how or where the thing that created that world was created, or whether it 
was a thing
or not - or some figment of some thing's imagination. 100 percent of the world 
does not
know anything - we are all agnostic. None of us are atheists, and none of us are
religious. We all do not know. Otherwise, there wouldn't be so many different 
religions
out
there - if we KNEW what existed we would only have one religion. If KNEW that 
nothing
existed, we would all be atheists. This is no the case. We know NOTHING, we are 
all
agnostic.

YOU don't know there are more colors out there than the ones we can see. If 
dogs cannot
see certain colors, we ourselves may not be able to see certain colors. You do 
not know.
We may or may not be the only being out there that can see as many colors as we 
can. But
you do not know. Believing that we are the only being out there that can see 
all colors is
like being atheist - you think you know something, but you are just as bad as 
those who
believe in aliens or those who believe in god. You are just as naive. The 
reality is, you
do not know, and they do not know - you are ALL agnostic.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] contemplating future of Lazarus in context of Mono and dotGNU

2006-05-20 Thread L505
 I come with a different point of view to Lazarus.  I want to build projects
 that first feed my family and second please my sense of right.

All of us who think this way should start a group/joint endeavor together 
because I am 
voting for the same thing, and I'm sick of all the folks out there
who have real jobs and consider programming just a game that you play on the 
side. Or
worse, the folks who are in school and participate in open source projects when 
they are
at school, but then as soon as they get out of school and get a real job they 
ditch the
open source project that seemed so right to them in school but so wrong to them 
once they
found out that family requires a real job and a real living. Or the folks who 
work on an
open source project but then Microsoft contacts them and immediately they go 
and work
for Microsoft (hello, Gentoo founder - sorry to insult you).

So, if anyone feels the same way, or at least you have something in common with 
JohnF and
my thinking, we should joint venture, no? If this is offtopic, respond to JohnF 
and me
privately maybe, and we could get something on the go.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Request for PR noise !

2006-05-20 Thread L505
 Thanks for enlightening us. But this whole discussion has really nothing to 
 do with
 lazarus/fpc/programming in any sense.

I brought in a quote from Blaise Pascal for the basis of my posts. And you 
should
familiarize yourself with Blaise Pascal as some of his quotes are very related 
to
programming, if you look at them from a certain angle. Blaise Pascal has 
everything to do
with the Pascal programming language since the language was named after him, 
didn't you
know. And Wirth himself must have at least agreed with some of Blaise's points, 
otherwise
he wouldn't have picked him for the language name.

I wouldn't have brought the quote in, if it was from someone else other than 
Mr. Pascal.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] OT - Request for PR noise !

2006-05-20 Thread L505
 Upon your arrival for the final judgement you find yourself standing
 in front of Ra, the egiptian god. And he is pretty pissed that you
 were worshiping a false god. =) Wouldn´t that be funny??

Another quote from Blaise explains the answer to this..
I think Blaise says that no religions are wrong, they are all right.

Personally, since I don't know - I don't know. And I stop there. I just don't 
know. So no
point in choosing a specific religion if you do not know, and no point in 
choosing atheism
if you do not know.. it just makes the most sense! Being agnostic still allows 
you to
discover and look for reasons WHY and WHAT, it just allows you to not make a 
fool of
yourself - because when someone asks you, you just say you don't know. Anyone 
intelligent
can figure out that saying you DON'T know, when you don't know, makes the most 
sense.

What's really funny is a lot of famous programmers claim to be atheist. (again, 
on topic).
If you research Linus/RMS/And others.. But truly, I think they are agnostic - 
even Charles
Darwin himself was calling himself an Atheist but then he changed later on in 
life - to
agnostic. Some atheists don't discover that they are actually agnostic until 
further on in
life - and this is okay. That's basically what I was saying - it is OKAY to not 
know, and
it is OKAY to change your beliefs at some point in time too - for example I was 
under the
belief that := was a stupid thing to use in a language since = is shorter when 
I first
tried Pascal but my beliefs changed when I learned the reason why to use := and 
now =
looks dumb when I see PHP or C code since it is not math-like at all. (again, 
ontopic -
for the sensitive folks).

 If god exists, why doesn´t the other gods exist? What makes this god
 better or more probable? If you ask me, the most unprobably thing in
 the universe is life. How come out of Carbon, Hidrogen, Nitrogen and
 Oxigen, the essence of life be formed? Those are just 4 elements,
 unliving things by definition. Life comes from things not alive? Or is
 there soul?

 I beliave that we will have one of the most important answers we may
 have when we have a computer powerful enougth to simulate the brain.
 If it succeds and artifical life can be created, then most likely the
 soul does not exist. And we are just aglomerates of minerals.

Computers can do lots of things that humans can't though - which is magical. 
Even cars
seem like magic. Look at horses and compare them to cars. There are advantages 
to having
things that are not like humans - you can't command a computer to do work - 
that would be
slavery. But you can command a computer to do work and it won't feel any pain. 
So in some
sense, we don't need to invent a human, we need to invent things that don't 
have feelings,
so we can get stuff done with less human pain. We can only hack with existing 
matter so
far, and we can't create the matter. So even if we make an artifical 
intelligence based
robot, we still are only hacking with existing nature matter, and not actually 
creating
anything. (and to stay on topic, for the sensitive folks, maybe the robot was 
powered by
a Pascal program embedded into it's chips - although the lisp folks are 
probably thinking
lisp, since Pascal is structured and mean to be commanded, while lisp is loose 
and meant
to be expanded).


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus Help System Requirements

2006-05-18 Thread L505
  Can anybody explain, why googling with:
  site:lazarus-ccr.sourceforge.net dynamicarray
  only gives two hits, but not
  http://lazarus-ccr.sourceforge.net/docs/lcl/dynamicarray/index.html
 
  It is a pity, that the most up to date docs are not completely indexed.

 I was just thinking along the same lines.  Google is so busy, it takes
 a long while to keep indexes up-to-date against constant changing
 sites.  This is going to be the only drawback of using Google to
 search docs.

That's the catch22 - I deal with this problem every month with websites. Google 
indexes
200,000-500,000 pages one month and then next month it drops down to 1,000 or 
even 200.
It's a roller coaster just like the stock market.  This would be where having 
your own
help doc indexing system would help. But to put less load on the 
freepascal/lazarus
servers it is obviously wise to have a client side program indexing system like 
chm/local
db/whatever. Still, more important than indexing the docs is writing them - if 
they
weren't written, there wouldn't be anything to index - and Michael and others 
have done
excellent job there. How about google desktop search? LOL I haven't tried that 
one.. place
google desktop search on the FPC docs directory and see what happens?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus Help System Requirements

2006-05-18 Thread L505
 As for the Websnap thing, I did not tought about it; but I once
 imagined that as we have support for gtk / qt / win32... we could have
 a layer for 'psp' so as to generate forms in web format. (And push it
 a little bit more and you can have a full AJAX application compiled
 with lazarus. But this kind of stuff is no more freepascal.) So a CGI
 that generate a perfect replresentation of a screen designed in
 lazarus could be done all from lazarus itself. Add the same features
 for reports,etc.

 That would be awesome. You switch from gtk destination to psp
 destination and the same project that was a stand-alone app becomes a
 cgi that can generate itself its visual representation and call back
 itself to process the commands. (That would require some javascrip...
 ajax crap).

With CSS absolute pixel positioning (rather than relative positioning) to have 
things land
on the screen at your desired destination using X/Y coordinates.. But as soon 
as you get
into x/y coordinate positioning it means your app might be better off as a real 
thin
client application anyway. But Ajax means no shipping of the application. At 
least it
means that right now - in the future ajax might be able to read special config 
files in
the form of cookies, or something - to me it seems sort of like reinventing 
thin clients..
but are there other advantages I'm missing of ajax, other than you don't have 
to ship it
like you do a thin client (and you don't have to compile it).  A good example 
of a thin
client that works well, but is not ajax - AVG antivirus for windows. It is a 
real software
application that connects to the internet every day to upgrade your virus 
definition. And
it works perfectly.

There was no need for AVG to become an ajax app because being a real app worked 
too - AVG
could be an ajax app - you could log on to the AVG website and have it check 
your PC for
viruses - but if it works well as a non-ajax app why not just ship it as a 
non-web
program. Well I guess it means that AVG is stuck shipping their app, and that 
they could
have used ajax if they didn't want to ship it - or they could have used 
VBScript based
website. But is shipping really that hard of an effort? Shipping an app is a 
hard effort,
but is it worth the effort? I think in many cases it's worth shipping an app - 
maybe in
the cases where it is not worth shipping an app ajax is the solution?

Well one advantage of AJAX is that no shipping or installing of the program is 
needed -
but eventually if Ajax becomes complex enough that it can store data on your 
PC, such as
config files, skins, etc, then I think it is essentially reinventing the thin 
client.. I
mean let's say it uses cookies to store your skin or your configuration for the 
ajax app -
well isn't this just a config file? So it really is just shipping a config file 
onto your
computer in the form of a cookie - but if it gets complex enough that the 
cookie is to
simplified and it needs to store other

Lots of the work I do on the web actually requires my web pages to
have tons of text on the pages so that my sites become popular on the search 
engines - so
the whole AJAX thing is kind of wishy washy to me for those things.. but it is 
not always
just about getting your thousands of text pages on the engines..

But I mean it also begs the question - if you are going to make an AJAX app why 
not
just compile a lazarus application and send it to your users - have TCP/IP in 
the
program connect to your web server, compile your lazarus app on all platforms 
and ship
the EXE/ELF/BSDexe. I guess AJAX requires no shipping of the application, and no
installation of the application. Right now my main focus with web development is
building websites with 200,000-500,000 pages of content - or
at least thousands of pages of content - so ajax doesn't help there much, but 
it could be
useful for things like banking websites where people need to see a proper graph
of their investments, and proper sessions on the website without sending an
HTTP request for each little thing they do on the site (the whole point of ajax)


 Any-way this might not be the good place to talk about that. And this
 'vision' is only mine. As far as I can see it, psp is actually a nice
 technology kit to build cgi apps for the web.

You can join the mailing list if you like..
http://psp.furtopia.org/cgi-bin/psp/maillist.psp

We have done some work with CSS/HTML to get direct positioning available on the 
screen -
we try to use CSS whereever possibel and only use Javascript where absolutely 
needed

Actually, Tony on our team has made a web application that is sort of like Ajax 
- it
uses javascript and CSS/HTMl and is an mp3 player that works right inside the 
web
browser, like a real software application works. In this case, Tony may have 
invented
Ajax himself, but he just really wasn't calling it Ajax.

I'm sort of a mix myself - I can see Ajax advantages but I also like building 
huge 200,000
page websites with 

Re: [lazarus] Lazarus Help System Requirements

2006-05-17 Thread L505
  one. For the moment I'm sticking on my SQLite+html idea. The html format

 Ça va.

 What about a SQLLite database that stores the help info, and a php
 script that calls that database...

No PHP required really. A CGI program written in Pascal that calls some sort of 
database,
and a desktop application that can call that database too. This keeps only one 
codebase
needed for the entire help system - the same database is used for both the web 
docs and
the desktop docs - just that the desktop doc is using an embedded database 
while the web
application may use a real full fledged version of the database. But most 
websites will
only need to use an embedded database because 99 percent of all Pascal 
applications are
not going to have high traffic websites that require a database that can do 
complex
queries fast. Especially on help documents which people will rarely be checking 
on the
website, since they have a local copy - the online docs are mainly for 
promotional
purposes to get a bunch of keyword heavy pages out on the net promoting your
software.

The reason I currently use Google to search for freepascal documentation on the 
RTL
instead of using my local copy of my help documents, is because Google itself 
is my
database that powers the search of the freepascal documentation. Some of you 
just
use grep maybe - I laugh at those people. But if I had a proper local database
there would be no need to search google. Whether the database is a CHM database
or an embedded DBF or SQL database doesn't matter - the disadvantage of CHM is
simply that I can't port CHM to the web database in one shot - since a CHM 
database
won't work on a website.

And for those special cases where you have a Windows CE computer, that can't 
run an
embedded database? Think again, most likely someone has already ported the 
database to
Windows CE. CHM format was never intended to work on Windows CE so CHM  be an
external dependency, as you'd have to have the user download an external CHM 
reader for
Windows CE.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Re: Lazarus File bigger then Delphi File?

2006-05-17 Thread L505

 What would help is really powerful smartlinking (being able to rip
 unused methods inside a unit for example).

Theres no such thing, that is what smartlinking is - KOL is designed around 
this but many
people hate KOL because it uses old Objects and requires a bit of thinking - 
and most
people could care less about Exe size - I happen to care a bit, because the 
first
impression of the user is always important - I'm not anal about using KOL for 
every app,
but I use it lots.. it's fun to have a challenge to write a KOL app instead of 
it being so
easy too - but I'm crazy - only crazy people use KOL. Boguslaw is crazy too and 
so is
Thaddy. Don't use KOL unless you are crazy and like being crazy :-)

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus Help System Requirements

2006-05-17 Thread L505


 On 5/17/06, L505 [EMAIL PROTECTED] wrote:
  The reason I currently use Google to search for freepascal documentation on 
  the RTL
  instead of using my local copy of my help documents, is because Google 
  itself is my
  database that powers the search of the freepascal documentation. Some of 
  you just

 Just for interest sake, how do you use Google?  Using the site:
 command in the search box...?  eg:  site:freepascal.org GetPropValue

Exactly:

site:freepascal.org docs

The keyword docs helps filter out mailing list stuff and other pages.. if you 
just want
to target in on the Documentatoin just type in Docs keyword in addition to 
the site.

So:
site:freepascal.org docs getpropvalue

instead of just

site:freepascal.org getpropvalue

And don't always use this:
site:www.freepascal.org

Skip the www prefix, incase you find something in community.freepascal, etc.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus Help System Requirements

2006-05-17 Thread L505


2006/5/17, L505 [EMAIL PROTECTED]:
   one. For the moment I'm sticking on my SQLite+html idea. The html format

  Ça va.

  What about a SQLLite database that stores the help info, and a php
  script that calls that database...

 No PHP required really. A CGI program written in Pascal that calls some sort 
 of

 We should od it in PSP
 (http://www.psp.furtopia.org/cgi-bin/psp/index.psp) :) I think it
 would ba a shame for us not to do a pascal cgi for such a job. ;)

Thanks for recommending the site. I actually recently upgraded the site to have 
a new
look. Micha once told me off for table designed websites because they Sux0r. 
Trustmaster
originally threw up the PSP website many years ago which used Tables. I'm 
converting the
PSP website to pure Div based site soon. It uses Div's now but still old table 
code exists
:-) If Micha is listening I wanted to thank him now for getting me out of my 
stubborn
table design thinking I used to be stuck in, because all sites I've created 
with Div's are
working out nicely.

Our psp devel mailing list has grown more in 2006 already than expected.  But 
be warned
that PSP  is not a perfect copy of Websnap/intraweb. PSP is definitely not 
copying Borland
because we found that Websnap architecture was too complex.  Although, many 
HTML helpers
and visual tools are being worked on, and we are working on more plug-ins for 
lazarus and
MSEGUI/MSEIDE and other text editors to make web development more organized and 
easier.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Commande syntax error (makefile -- can't compile)

2006-05-15 Thread L505


 When I try to compile either fpc or lazarus from svn, I always get
 errors on each line of makefile. I just can't compile. I do not
 understand why.

 Is it my make version? (MAKE Version 5.2  Copyright (c) 1987, 2000 Borland)


rename Borland make to something else, gnu make and Borland make have the same 
executable
file name

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Request for PR noise !

2006-05-14 Thread L505

 Michael Van Canneyt wrote:
  If Lazarus puts pascal as a language on the map again, it's name is
  VERY well chosen indeed, as Lazarus rose again from the grave !!

 A RAD/IDE should not lock itself into one language only, but should rather
 strive to be compiler/language independent.  Implementing this with the FPC
 would probably be proof enough that Pascal isn't dead.

This is very very hard to do. It could be done with a plug-in system - if you 
unload the
Pascal parser then the IDE is no longer a Pascal IDE but now a C++ ide. For 
example,
CodeTools/CodeInsight needs a parser to parse the text in the IDE window. You'd 
have to be
able to unplug the Pascal CodeTools parser and plug another language CodeTools 
parser in.
But this is much more man-power required than just focusing on one language. 
Look at Vim
and Emacs - they are supposedly the tools which are supposed to handle multiple 
languages.
But what good are they? Don't we have to build Emacs plug-ins in Lisp? Why not 
Emacs
plug-ins in Pascal?

There is always some language favor it seems. And Eclipse? It is favored for 
Java - even
though it's supposed to be a multi language development tool. And as for 
BDS2006? It only
handles C++/Pascal but why not Lisp, Perl, PHP? If Borland doesn't have the man 
power it
is very slim chance that a small open source project can handle such a task. 
And then we
have to beg the question - where do we draw the line? Which languages do we 
skip? Perl?
Python? TCL? Algol? Right now it is easy to draw the line - Pascal. It's a very 
easy line
to draw. If you let this line slip - it becomes very hard to draw. Where do you 
stop? How
many languages are on the chocolate bar packaging before the chocolate bar 
package becomes
so flooded with languages and so lacking of actual chocolate bar?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Request for PR noise !

2006-05-14 Thread L505

 On Sun, 14 May 2006 21:00:44 +0300
 Al Boldi [EMAIL PROTECTED] wrote:
 
  Calling it OpenRAD would probably be perfect, unless it's already taken.
 
 That's a description, not a name.
 
 Micha

Call it DevCo IDE then ;-)

Just admit it - the best name for the IDE is Lars.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus Help System Requirements

2006-05-12 Thread L505

 Micha Nelissen wrote:
  Graeme Geldenhuys wrote:
  they use inside the *.jar files (html, straight xml or odt ...) and
  what viewer they use for the help.  They do use the Berkeley Database
  for indexes, keywork search and extended tooltips.
  
  Berkeley DB ? Sorry, but that rings alarm bells over here ... all 
  projects I've heard using it have corruption from time to time :-(.
 
 Perhaps, but those projects by and large aren't READ ONLY, like a help 
 file would be.
 

So what about SVN?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-12 Thread L505
 In your lazarus directory /components/chmhelp/packages/chm/ there is a
 unit called chmreader. It is simple to get a list of any of the files in
 the chm and extracting them:

 That's how easy it is to get all the files out of a chm :)

Okay so its easy to get the HTML out of CHM (legally.. not sure), now how do I 
convert the
CHM file into a web program that runs on my web server and allows people to 
make queries
at my website to search the html files? This is my case for using a database 
from day 1,
for both jobs - instead of using CHM for the desktop and some other database 
for the web
server docs.

BTW Felipe, if you are listening - CHM was not available on Windows CE either - 
someone
has done some work to get it working on Windows CE though.. just as someone got 
SQLite
working on Windows CE. My point is that databases are no worse than CHM for the 
Windows CE
argument.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Suggestions for Improvement

2006-05-11 Thread L505
2. Replace the delphi dfm with a real code init (java style).
  
   What are the advantages?
 
  Easier component creation control/management via ONE language.

 1) Please do not forget, that then you will be able to Search /
 Replace on component properties if they are in code!   Currently the
 Delphi (and Lazarus I believe) doesn't seach dfm or lfm files when you
 do a normal search.

You can still search and replace - you just store all the design time 
components in an
include file.
Instead of design time components via an DFM object file, you use an include 
file with
true Pascal code, not DFM object code.

When you search for stuff in your code, the include file is not searched - just 
as the DFM
file is not searched when you search in Delphi. The include file hides all the 
design time
code so it does not bloat up your code logic with design code.

There are real world examples out there that uses this exact system. KOL/MCK 
does it
inside the Delphi IDE, and there is no difference between editing a property of 
a MCK
component from editing a property with a DFM component - the only problem was 
that Delphi
is designed highly around a DFM system - so KOL/MCK had to implement tricks to 
get it
working in Delphi. But with an IDE that is not proprietory, no tricks would be 
needed.

Back when I started using delphi, I wondered what black magic was creating my 
forms for
me? Why couldn't I see and tap in to the code that created my forms? I guess 
curiosity
kills the cat.

 2) As anybody accidently deleted a component from a form.  Afterwards,
 you don't have a clue as the what custom options where set and what
 other components it linked to.  Have then is lines of code minimizes
 this issue (yes Source Control software does help in such cases, but
 not everybody uses source control software - poor folks).

You still use a component pallette and visual design.  You still delete and link
components together. All components are still linked to each other the same 
way. You just
link the components through the code instead of through an object format. Take 
Synedit for
example:

Synedit1.highlighter:= SynPasHighlighter;

Your highligher is linked to your synedit component. Instead of unlinking it 
and linking
it within the DFM file, you do so in the include file with real code in it. 
There's no
difference from an end user perspective who is using the IDE - components being 
dropped on
the forms will act just the same as if you were using a DFM file.

There are advantages and disadvantages of using real code versus using DFM 
files. DFM
files are a cleaner format than actual Pascal code. Real code is easier to peak 
into and
copy/paste than DFM files (but a DFM to code converter can be made). DFM files 
make the
exe bigger in size than run time code, generally speaking.

Now the question is: what does Java do this in its Visual ide's?  Does it 
create an
include file with component properties stored as real Java code - or does Java 
dump all
the code into your Java source files and not modularize it? I'm interested 
because I
haven't tried any visual Java ide's. Or does Java use some JFM format in some 
ide's ?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-11 Thread L505
  Does Apache Server work on Windows CE? So I shouldn't use Apache for a 
  webserver, just
  because it isn't truly cross-platform? Sometimes people get carried away 
  with the
  whole cross platform advantage - when really there would be no advantage of 
  having

 Dude, you are missing the point completely!!


  Apache run on Windows CE. I don't know why anyone would write or read 
  documents
  on a small Windows CE computer. Maybe if you are on an airplane and you 
  only have
  your GameBoy with you - how will you read the Docs?


 Windows CE is just like any other platform!! Windows, Linux or OS X.
 Just because it's a small form factor makes no difference. Loads of
 people make a living writing software for the PDA market.  I have
 helped develop a Time Sheet software package for a 2000+ employees
 company in the UK,  and yes the application needed a help file (as
 does any good software application)!  Why may the PDA market not have
 help files?  It is a software application that should be shipped
 with help.

You are right - I thought we were purely talking about the documentation for 
the FP
compiler and the Lazarus IDE itself. When I am a developer I usually have a 
LCD/CRT
monitor and would never ever read freepascal compiler documentation on a 
Windows CE
computer or Lazarus Documentation. If we are talking about a generic help 
system for
applications that are generated with Lazarus - then it is a different story. 
Although,
like I pointed out - SQLite does appear to be available for Windows CE - so my 
case
doesn't change. But then again, I'm not really advocating SQLite - it would be 
nice to use
a Pascal based help system.

What I'm mainly trying to point out is that if we are going to be doing 
indexing and
sorting, are we not reinventing the database - since databases do all these 
things for us?
Why would we want to index XML files if we can dump the content into the 
database and have
it indexed for us by the database? In otherwords - does the developer really 
want to spend
time reinventing an indexing system when someone has already done that for us 
in the
database? In some cases, we must reinvent a bit in order to have a nice custom 
solution.
So would everyone please point out the reasons we cannot make use of a database 
and why we
really need to invent our own help database - if there are plenty of databases 
out there.

Also - will the custom database solution like CHM (I consider CHM basically a 
reinvention
of a database - a custom one) be web ready? i.e. can I upload the CHM file to 
the internet
and create a web program that allows users to search the documents on my 
website?  With a
real database you can upload your help documents to a web server and create a 
web program
that searches your docs. Then your company will get much more promotion if your 
help files
are online in addition to you offering an off-line doc system.

So can CHM be searched, indexed, etc. online on the web, too - and not just 
offline? with
several people querying it at once? I think CHM is mainly designed for one 
person querying
it.
With a real database I would ship a small embedded database to the user - which 
one user
can query comfortably.  But then use a full fledged firebird/mysql style 
database on the
web server to serve the docs to hundreds of people. Can CHM some how be 
uploaded to
the web and have multiple people querying it with reasonable speed? Or must a 
real
database be used? If a real database must be used - it means that you will then 
have to
convert that CHM file to a real database anyway - so you now have double the 
work
instead of just using a database in the first place.

Are there enough advantages of NOT using a database. That's what needs to be
decided.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-11 Thread L505
 I think you are one of a selected few.  CHM is basically compiled html
 files into one file. Why would I want to see the code of each help
 file I am viewing.  All I want in the content.

 A single file is great for distribution (smaller and easier to copy)
 compared tho say a 1000 html pages with there external images in the
 mix.

Well I like having the HTML available that I can edit in a source file
in case I need to print the documents and the current format is not
good for my printer. Sometimes I change the font size of the documents
so I don't waste as much paper. I don't like having the file hidden in
some CHM file that I can never have access to with my bare hands.
If there is a CHM decompiler that is legal to use and not illegal then
that would be good. Or if you offered HTML and CHM that would
be good - can you extract all the HTML out of CHM legally?
Because one time I tried to decompile a HLP file and it turned out
to be a huge mess.


 Also the corruption comment makes no sence. How often does CHM files
 get corrupt? It's never happened to me (maybe I am just lucky)  Why
 would any other single compressed file be any different?  That would
 be like saying any .zip or .rar or tar.gz file is not a good idea.


Well when I back up my hard drive I do not dare put it into one zip file.
I've had 3GB zip files damaged before. Instead I use several zip files
instead of one big one.

But in the case of a CHM file corruption is not much of an issue since
it probably won't be written to often, and the user can redownload
the CHM file any time he wants.

I've also had several microsoft formats go corrupted on me such as
giant email files that are stored in binary form in one big file. Losing
all your email is not fun. But for CHM format, again, it is not as big
of an issue since you could always download the CHM file again.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Suggestions for Improvement

2006-05-11 Thread L505
  Back when I started using delphi, I wondered what black magic was creating
  my forms for me? Why couldn't I see and tap in to the code that created my
  forms? I guess curiosity kills the cat.

 You can edit the .dfm. Just not the form and the dfm at the same time.

The DFM never told me when the components were created and freed, was what I was
getting at. I wondered, as a beginner, what black magic allocated and freed the 
memory to
create those forms. Long ago I was learning about run-time component creation 
and I wanted
to modify my design time forms to be run time, by finding the actual code that 
freed and
allocated the design time forms. I was looking for the code so I could turn my 
components
into run time ones without writing all the run time code myself.  I wanted to 
peak into
the code and find out where form1 was created and freed.. couldn't do it. 
(could have
maybe if I knew about GEExperts component to code tool).



   2) As anybody accidently deleted a component from a form.  Afterwards,
   you don't have a clue as the what custom options where set and what
   other components it linked to.  Have then is lines of code minimizes
   this issue (yes Source Control software does help in such cases, but
   not everybody uses source control software - poor folks).
 
  You still use a component pallette and visual design.  You still delete
  and link components together. All components are still linked to each
  other the same way. You just link the components through the code instead
  of through an object format. Take Synedit for example:
 
  Synedit1.highlighter:= SynPasHighlighter;
 
  Your highligher is linked to your synedit component. Instead of unlinking
  it and linking it within the DFM file, you do so in the include file with
  real code in it. There's no difference from an end user perspective who is
  using the IDE - components being dropped on the forms will act just the
  same as if you were using a DFM file.

 Binary properties can be difficult to set in code.

Like images/resources?



  There are advantages and disadvantages of using real code versus using DFM
  files. DFM files are a cleaner format than actual Pascal code. Real code
  is easier to peak into and copy/paste than DFM files (but a DFM to code
  converter can be made). DFM files make the exe bigger in size than run
  time code, generally speaking.

 DFM make the exe smaller. It is the streaming code, that needs quite a lot
 of code. But this is a rather fixed amount. So for big applications or if
 the library is in a .dll/.so the DFM mke the exe smaller.

You say DFM make the exe smaller, period. But you should say - DFM make the exe
smaller in some cases only. :

Because I've never seen a DFM exe smaller than a non-DFM exe myself, but I'll 
take your
word for it. All the applications on my hard drive are several small and only 
some medium
size programs - I make a lot of small utilities with only 1-5 forms in them. I 
don't make
many large applications that exist all inside one exe - most of the time I make 
a
bunch of small programs - then if I have one large program where I think a 
small add-on
would be useful, I make a plug in system.  So it depends what the threshold is 
where
the DFM does make the EXE smaller, I guess. If it requires that 5-10MB exe size 
exist
before you start seeing gains in exe size - that doesn't really affect me.. 
with the
work I do. I generally like to make the program have a plug-in system once it 
gets that
large anyway, so it would actually be more advantageous for me to have a lower 
threshold.

Do you know generally what the threshold is before you have seen the exe become 
smaller
from using DFM? 5MB? 6MB?

Lazarus is quite a nice and big application and is only 6MB. I would think
lazarus would be maybe 10MB in size, but it is only 6MB. So maybe we are seeing 
the
threshold kick in here?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-10 Thread L505
  Even CHM format
 creates multiple files and depends on them.

I actually meant HLP format on Win32

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-10 Thread L505

 I don't see the big deal with external dependencies because almost all 
 programs have one
 or more external dependencies: a system DLL/DSO, a config file, etc.

  I have. Lazarus works for Windows CE, does sqlite work on it?

http://sqlite-wince.sourceforge.net/
But I wouldn't want to read or write documents on Windows CE anyway.

Does Apache Server work on Windows CE? So I shouldn't use Apache for a 
webserver, just
because it isn't truly cross-platform? Sometimes people get carried away with 
the
whole cross platform advantage - when really there would be no advantage of 
having
Apache run on Windows CE. I don't know why anyone would write or read documents
on a small Windows CE computer. Maybe if you are on an airplane and you only 
have
your GameBoy with you - how will you read the Docs?

Since FPC compiles for GameBoy - will you be able to read your HTML 
documentation on your
GameBoy?

BTW - I'm not advocating SQLite because I've personally never tried it myself 
yet.
There may be better solutions out there. But I think we may be reinventing the 
database.
We should at least use some sort of embeddable database, instead of reinventing
another database yet again. A Pascal based one would be nice, even if it is 
slower
than SQLite or not originally as powerful as SQLite - because I don't think 
speed is
really an issue when this is only one person querying the help DB on their home 
PC.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-09 Thread L505
 On 09/05/06, Michael Van Canneyt [EMAIL PROTECTED] wrote:
  I'm not very much in favour of creating yet another format.
  Standards exist, we should try to use them as much as possible.

 Linux - has no standard help!

Man Pages!

Indexing? use grep! (detect sarcasm here).


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-09 Thread L505
 2006/5/9, A.J. Venter [EMAIL PROTECTED]:
  On Tuesday 09 May 2006 15:53, Alexandre Leclerc wrote:
   I'm sorry, I can't find the source code... :(
  
   The only code on sourceforge, well, I don't know if this is the
   compiler itself, but it does not look like. Any-way I've no time now
   to look at that, but I will because this is interesting me a lot for
   our own help file creation.
  
  Did you look at the webcvs link ? It is quite possible the code is only in
  CVS.
 
 Yep, the cvs tree is almost empty, and all files are 2 years old.
 
 Well, there is a site for open source information on chm files:
 
 http://htmlhelp.berlios.de/formats/chm.php
 
 The HTML Help Maker project at savannah is at early stage and is in c.
 But it can create the basic file shell. If someone really want to
 code a compiler engine; it could start with that ar translate to
 pascal.
 
 But my personal idea on help files for lazarus would probably be:
 - get very well built html files with many links
 - build a search tool in lazarus to search the html files in the help
 folder. It is more simple and will do the job.


Good idea - one way to accomplish this and have a fast indexing system
would be to Ditch XML and place the documents in a database. Database
would allow fast searching of the documentation. I know someone has
stated before that they already tried to put the docs into a database
for the FPDOC system and it didn't work out well because XML fits the
document model better .. I think it's still possible, though. Not
impossible, that's for sure. Just the time needed to make the system.

Or, you could search the HTML/XML files.. but it would be slower than
just searching a DB directly.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-09 Thread L505

 sqlite is good candidate too (multiplatform,single file,fast, only one
 dll/so required)

  Sorry, but no:
  - No external dependencies, please.
 - Specifically: sqlite is a horrible database for use in Pascal.
  And very slow for complex queries, in general.

What database is good for Pascal? And since it is not going to be external - 
what embedded
database is good for Pascal which ships inside the exe/elf?
Do any even exist?

IOW - what did you have in mind?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] New help doc format?

2006-05-09 Thread L505

   There is at least TDBf component for DBase and some memory database
   components, but neither is suitable for a help system.
  
 
  Really.. and why? Too square?

 DBase creates too many files.

How many for say a 100MB database or so ? 100's? Are they big files that take 
up lots of
space?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Creating a GUI based DLL with FPC 2.0.2

2006-05-04 Thread L505
 In january I was told by L505 that If you decide to use fpc 2.0.2
 remember that when you build a normal lazarus GUI style application
 you may have to change back to your old compiler in the lazarus
 directory. -- Thread subject: Help with DLL (using pchar, etc.)
 date 2006/01/12

I think my statement in January was regarding to the fact that the LCL is built 
with say
fpc 2.0.0 cannot be linked with a lazarus GUI exe which is trying to be 
compiled with fpc
2.0.2 - i.e. lcl PPU files are not compatible with your target project ppu 
files.


 (I can't provide a url to the archive because it seams that all mail
 archive between dec. 13, 2005 to feb. 27, 2006 are lost... I dont'
 know why.)

 Now, I have to build a GUI based app inside a DLL with FPC 2.0.2 since
 I can't link with the DLL build with latest version -- this is just
 not working at all.

You could download some lazarus version that uses FPC 2.0.2, or build your own 
lazarus
based on FPC 2.0.2

Which FPC is causing you troubles?

I have built my own Lazarus 0.9.7 using FPC 2.0.2 before - it required a few 
changes since
0.9.7 was not intended for fpc 2.0.2

Which copy of lazarus do you work with? 0.9.XX

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus Foundation pros

2006-05-02 Thread L505

 Hi.

  What they need is people. They (we?) don't need a foundation to make a
  better website, but we need someone to make a better website. Obviously
  the core developers don't care much about that. They have other
  interests.

 Your idea of, making some improvements to the community as an alternative
 of a foundation, sounds good...

The problem here is that people disagree on what SHOULD run the website - some 
think
current php used is fine to power the website. Some think it should be powered 
by perl.
Some people feel it should be done in PEAR or phpnuke. Some feel it should be 
powered by
websnap style lazarus website engine. Some people feel it could be done in PSP. 
If you had
someone in charge to say listen Mr. we are paying you $400; If you want the 
$400 you
build it the way we want based on our manager's instructions. But there are no 
structured
rules or instructions, so no one will ever get it done - except the core folks 
when they
have time. It's not as easy as just saying we need people - do the work now. 
You must
discuss WHAT must be done and you must have some structure and management. 
Otherwise it's
just an open can of worms with 50 guys battling (talking) about WHAT engine 
should be used
for the site. It's not as simple as opening up lazarus and having some guy 
build the
website. WHO, which guy? How many guys? Define some structure. Learn from the 
Pascal
language: a structured language. Not an unstructured language with weak typing.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus vs Patents

2006-04-29 Thread L505

 I can answer that. It isn't taught in school at all. If you go to any
 school and I mean any school that teaches CompSci in any way they will
 tell you that, Pascal is a dead and useless language. Nobody uses Pascal
 anymore.

This was almost the exact quotation I heard from people on a local linux 
mailing list
community when I mentioned something about Pascal..

The best way to respond to people like this is to help them with their Perl 
problems once
in a while.. they will respect that you helped them, then they might respect 
you more for
what language you use. I know nothing about perl but I still answer some 
questions
because the languages have something in common when it comes to a certain way 
to solve a
problem, etc. It's sort of passive marketting, as opposed to active 
marketing. Active
marketing would be to tell someone pascal Kicks Ass who you know is already 
using a
language similar to Pascal - there are quite a few people in Java who can 
relate to Pascal
since it has strong typing in common.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] FPC/Lazarus Foundation would need people

2006-04-29 Thread L505
 In all of this talk about the need for a foundation it has been said how
 we could have these people doing this job instead of the developers. We
 could have others doing other jobs, etc. etc. etc.

 Well as the statements point out this needs people. It needs people that
 are involved and interested in FPC/Lazarus. That is where the problem
 starts.

It's not just people doing work though - it is also communicating about the
attitudes of the current people in charge too. The current attitude
consensus is that it's just a hobby.

On every single successful project, there is always lots of discussion and
lots of code. Not just lots of code alone. Lots of code alone are the one
man developer projects that become a selfish endeavor of one attitude
from one developer (if two developers are on the project, it leads to two
different code bases because of disagreement and no discussion on plans).

Some of our attitudes our not in line. Some of us will and already are using 
FPC/Pascal
for real work.. and pleasure too. But not just pleasure and not just hobby. 
What scares me
most is the hobby attitude because I know FPC is much more than just hobby 
quality.

It's not just as simple as gathering an army of programmers together and doing 
lots and
lots of work. I've had conflicts of attitude before and it doesn't matter if 
you are both
very hard workers, if your attitude isn't the same then you can code all you 
want but you
might disagree on the goals of the project and start your own project. This is 
why
OpenSource/Mozilla/OSI licenses spouted off from GNU - because people didn't 
agree on the
same ideas. RMS is a good Lisp programmer and so is ESR, and they can pump out 
lots and
lots of code - but that doesn't mean they will work good together.

With FPC camp right now, we have two crowds or camps:
1. Those who want FPC to be successful for serious use, but hobby use is nice
2. Those who only want FPC to be hobby, serious  - nahh - serious ruins the fun.

I am part of camp 1 because I currently use FPC for serious use. I also use it 
for hobby
too.

Look, if we only use FPC for hobby and then we go off and use a real tool like 
MS VC or
GCC for real work, how does that make FPC look? I feel that less of a hobby 
attitude is
needed, otherwise people will get a feeling about this open source project 
they just work
in their spare time, it's not a serious project - only a hobby for fun.

But, this is all too common in many open source projects... On the other hand 
if it
becomes too serious of a Business compiler it may end up being a corporate 
buzzword
society. Have to balance it out - don't go too far as to making FPC a buzzword 
Borland
style group - but please, at least admit that FPC is more than hobby quality.

Some of you might be thinking will FPC split into two projects such as
FreeBSD/NetBSD/EtcBSD split up? This would only happen, if some core
developers had different views - right now I think ALL (Every Single One) of
the core developers is part of camp 2, not camp 1.

Yes, Camp 2 is doing more of the core compiler work - so it means they have 
more control.
It could also be though that the core developers are just humble folks, and 
they do intend
for these projects to be serious quality - and when they say hobby, they are 
just being
really humble. I think this is true, because I know FPC is more than just hobby 
quality -
and the documentation, and everything else about the project.

As for Lazarus, it is more on the hobby quality  side - being honest - since it 
is a
huge project which isn't as near complete as FPC is. Not that this couldn't or 
wouldn't
change.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus/FPC Foundation

2006-04-26 Thread L505
 On 4/26/06, L505 [EMAIL PROTECTED] wrote:
  The only way a real free server could ever exist, is if we had free solar
 power/alcohol
  power and free hardware foundations

 Free as in Freedom.

The patronization - I've read the differences between cost and speech for 5
years now. I'm no GNU amateur - I know all about RMS.

But if you read my message again - you will see that I wasn't talking about 
cost - you
just interpreted it that way. Read my message again in the notion that I was 
talking
about speech, then.



 Not Free Beer.

 Or more clearly: Free software is about Freedom and not about cost.

The GNU states that you must not hide the sources and charge money for
your source code. This is clearly about cost, which is one aspect of freedom.

Cost + OtherRestrictions := PartsOfFreedom;

And what about if I declare a license on consulting to be free (as in speech, 
yah yah, I
heard you)?
You may not directly charge money for the consulting about your software - you 
may only
charge money for services that ship the consulting of your software to your 
friend.

But wait a minute, consulting does not need to be shipped. It can be submitted
electronically. So what do you do then, Richard?

So RMS is out of a job?
(I believe most free software folks make their living off consulting and custom 
software.)

Taking this one step further: if I declare a free custom software license that 
states that
all custom software must be free (as in speech, yah yah, not about cost), and 
you can not
directly charge money for the custom software, as that is a restriction. Then 
what do you
do?

ESR out of a job now too? (Eric states on his website that one way to be 
corporate with
open source is to create custom software - catch22).

Cost is one restriction - and is a part of the whole freedom issue.

Again - but if you read my message again - you will see that I wasn't talking 
about cost,
you just interpretted it that way. Read my message again in the notion that I 
was talking
about speech, then.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Passing a procedure as a parameter

2006-04-25 Thread L505
 Ian bell schreef
  Thanks for the detail. I find it really hard to get my head around
  OOP. It just seems to put barriers in the way of what I want to do.
  Can you think of any reason why it would want or need a procedure in
  this form?
 I guess the best advise we can give you is:
 Get a book on OO programming and start studying that.
 Once you get the hang of OO you do not want to do anything else anymore. :)

Absolutely not - I do procedural and OO programming and sometimes procedures 
and functions
fit the job better. OO can be suited for GUI widgets, as long as not too much 
inheritance
is used.

Sometimes I do wish that a TSomeWidget was not inherited 500 times because I 
have to go on
a wild goose chase to find the code that actually runs the SomeWidget. Try 
debugging
something that is inherited so many times, and you can't find the bug. Nail the 
right
procedure in procedural code and you find the bug. Advantages/disadvantages of 
both
programming paradigms.

Procedures are something everyone can agree on, and with Pascal units you can 
organized
procedures nicely - with C it becomes messy because they don't have units to 
modularize
their procedures. THere is an operating system done in OO (Symbian OS ??) and 
guess
what happened: everyone had a terrible time interfacing into it. Talk about 
code reuse.
Interfacing into an API is code reuse. And they were having problem with reuse, 
by
using OO..


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Passing a procedure as a parameter

2006-04-24 Thread L505
  @MyEventHandle
 

 Closer. Now I get this error:

 unit1.pas(200,69) Error: Incompatible type for arg no. 3: Got
 address of procedure(LongInt, LongWord);Register, expected
 procedure variable type of procedure(LongInt, LongWord) of
 object;Register



It probably expects a method which must be part of a class

TSomeClass = class
  procedure Method1;
end;

var
  SomeClass1: TSomeClass;

begin
  SomeClass1.create;
  // @SomeClass.Method1; --- use this
  SomeClass1.free;
end.


This happens when it expects procedure of object as opposed to a plain 
procedure or
function not *of* an object.

It is probably expecting this:
  TObjectProc = procedure(something: tsome) of object;
versus a regular method:
  TRegularProc = procedure(something: tsome);



_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Serial comms, events and other stuff

2006-04-22 Thread L505

 Excellent - good to see a sense of humour here. Does this also prevent
 me programmaticaly writing to the TMemo? Presumably not else it would
 be nought but a BOG label.

The read-only property is from a User perspective.. user clicks on the edit 
widget and
can't do anythin'.
But the programmer can access the edit widget himself, even if read-only is on.


 Do you know where TMemo's methods are documented?

The Delphi docs have pretty similar functionality.. Most of us have a copy of 
Delphi so we
pull open the Delphi help files to look at - but if you don't have a Delphi CD 
there might
be some Delphi docs online. If no docs for Delphi online, it means Lazarus team 
and users
should start a documentation project real soon - as many users have asked for 
docs :(.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Serial comms, events and other stuff

2006-04-22 Thread L505

 The read-only property is from a User perspective.. user clicks on the edit 
 widget and
 can't do anythin'.

Can't write anything, I meant.. still can copy/paste, select things.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Serial comms, events and other stuff

2006-04-21 Thread L505

 3. In Tcl/Tk I use a textarea widget with keyboard entry disabled to 
 show progress and data. The nearest equivalent in LCL seems to be 
 TMemo. How do I disable keyboard input to this and where can I find 
 documentation on this and other) components - the wiki seems fairly 
 silent on this or do I just assume it work like a Delphi TMemo?

Try the ReadOnly property, set it to false

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] FPC question

2006-04-21 Thread L505
 Any idea how to rename the title of a page? See the newly added tiOPF
 page. Currently the title is TiOPF and it should read tiOPF.

Probably have to cut and paste, not sure if there is a rename function in 
wikis..

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Serial comms, events and other stuff

2006-04-21 Thread L505

  Try the ReadOnly property, set it to false
  
 
 Er, it seems to default to false; did you mean set it true? that would 
 make sense.
 

Yes.. sorry. Do the opposite of what I say.

var
  CorrectAnswer: boolean;
begin
  if Lars.Responds  then
CorrectAnswer:= not Lars.Answer;
end;

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] x86_64-win46

2006-04-20 Thread L505

 Another question: does the current win32 lazarus snapshot already
 contain the internal linker (compiling time 2.34 sec.)?

Can't answer your question, but I noticed that the compilation time includes 
linking time
so it should really be called compiled and linked in X.X seconds since we do 
like to
distinguish between linking and compiling in FPC's case (but in Delphi's case 
50 percent
of the users probably wouldn't know what a linker is, so..)

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] Refactoring Subfolders

2006-04-09 Thread L505
Hi, the current copies of Lazarus that another developer and I are using do not
seem to have a subfolder or subdirectory checkbox for refactoring. Do any
lazarus versions contain that feature. Sort of like the search/replace tool in
lazarus where you can recursively search subfolders.


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [OT] Re: [lazarus] Temperary FTP Speace

2006-04-09 Thread L505

  There is no excuse for Oil being a raw material needed to ship food
 
  No, there isn't. Which is why those who can are switching to gas (which,
  lo and behold, farmers can produce that themselves) and hydrogen and
  trains anyways. The only problem is the lag of the infrastructure,
  that is, inertia. But that wasn't the point, I see.


And as for hydrogen: how do you make hydrogen? By using energy to first get the
hydrogen?

I'm not familiar with the process. I know you can make hydrogen from water, by
dissecting water into pieces through electrolysis. But this costs you energy -
the electricity that it takes to make hydrogen may be more than what you are in
fact getting OUT of the hydrogen that you produce. I'm not sure though. Then
again, it does cost us money to run oil rigs and etc. - and we do get more oil
out of the ground than it costs us to retrieve the oil.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Refactoring Subfolders

2006-04-09 Thread L505
  Hi, the current copies of Lazarus that another developer and I are using
  do not seem to have a subfolder or subdirectory checkbox for refactoring.
  Do any lazarus versions contain that feature. Sort of like the
  search/replace tool in lazarus where you can recursively search
  subfolders.

 Do you mean, you want a fifth option in the refactoring dialog 'project
 directory and sub folders'?

That would be nice..

(I'm interested in how the refactoring works, is synedit tokenizer part of the
magic?
I gonna look into the code and see.)

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Temperary FTP Speace

2006-04-07 Thread L505



You could split the file into pieces and rejoin it 
together later.
I'd do it in 100MB splits, or 50MB 
splits.


Re: [lazarus] Temperary FTP Speace

2006-04-07 Thread L505

  You could split the file into pieces and rejoin it together later.
  I'd do it in 100MB splits, or 50MB splits.

 Or you could just pay $10 for avoiding the trouble ;-)

In other news, Flavio bought a copy of delphi for $500 to avoid the trouble of
freepascal.

It's a common dilemma:
 1. give in and buy software/service or shareware that does what you want
 2. code a program up for free yourself, like a real man
 3. turn off computer and get some excersize outside and stop worrying about
binary.

Actually I recently started a split utility project (compiles in both FPC and
Delphi) that let's me resume the split later. Problem is a 10GB file won't fit
on a CD, so you have to pause the splitting process and resume it later, after
entering the second CD in the drive. (my hard drive was too full to have the
file split on it first before going on to the CD). Not done the joining utility
yet though.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Temperary FTP Speace

2006-04-07 Thread L505

 Thank you, but I appreciate the freedom and the power of open source ;-)
 Also, I can't see anything wrong in spending US$10 on something
 minimally important, why is it?

No problem at all - I would spend $10-$20 on a I Love Freepascal t-shirt, for
example.

 Remember: free software is about freedom, not price.
 Of course monetary cost can be and usually is a form of restricting
 freedom, but nothing if absolutely free.

Oh I wrote about these issues before.. I know what you are saying.
http://z505.com/cgi-bin/qkcont/qkcont.cgi?p=Open-Source-Service-Scared-Him
Warning: don't read paswiki if you have a busy day. Takes a long time to wade
through all the rants on that site.

 Actually I recently started a split utility project (compiles in both FPC
and
 Delphi) that let's me resume the split later. Problem is a 10GB file won't fit
 on a CD, so you have to pause the splitting process and resume it later, after
 entering the second CD in the drive. (my hard drive was too full to have the
 file split on it first before going on to the CD). Not done the joining
utility
 yet though.

  There're tons of such utilities already.

I spent a few minutes on google trying to find one that had resume capabilities
or stop and let me insert next CD-ROM capabilities but couldn't find one.. I
don't know what this feature is called?
If you know of a utility let me know.
The ones I tried just split the files into one directory without pausing
inbetween.

Anyway it was fun to build the program.. the real problem was my google skills
weren't good enough. Some times I don't know what a certain feature is called.
Resume splitting? I don't know. I needed to learn a bit about splitting files in
Pascal, so I wrote a util to gain some pascal knowledge. Unfortunately I didn't
come from the TurboPascal days where it was very common to split a file onto
several floppies. I don't have that experience. :-)


p.s. just buy EditPlus and skip Synedit. It's faster than most Synedit based
editors. Just pay the $30 for EditPlus already and quit the Synedit nonsense.
But of course, synedit is fun to learn about and can always do more then
editplus will ever be able to do, due to extensibility.  Actually that's why I
wrote the file splitting utility - it is inhouse software that I need to extend
later on in a few months anyway. Gotta love inhouse software.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Linking error

2006-04-04 Thread L505

 I sometimes only get:
   error while linking


Well I tried renaming as.exe to as.old and the IDE reported the correct error,
and didn't just spit out error while linking - so can't really reproduce the
issue yet.

I recall using Build All to solve the problem, but can't remember what the
circumstances were. I'm sure I'll come across it some time if it is a true
problem that affects me :) otherwise I'm just moaning.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Linking error

2006-04-03 Thread L505
 Hi

 Could someone point me in the right direction please.  I have added the
 unit pgcl (a postgres access unit) to a project which built and compiled
 perfectly without any problems. Now when I build the project , a message
 error while linking occurs and the project compilation does not
 complete.  Since there are no other messages that could point me in the
 direction of where to look for the problem - I have no idea as to how to
 sove this.


Use the command line to find out.
fpc project1.lpr -options


Lazarus really needs to show these errors, I think it skips part of the error
and only reads some of it (the non-important part in this case). It won't tell
you that as.exe or as is missing, and other things.
Or, maybe TProcess is not capturing all the messages, or just capturing the very
last error message when in fact we need about 3 lines up.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Linking error

2006-04-03 Thread L505

   Hi
  
   Could someone point me in the right direction please.  I have added the
   unit pgcl (a postgres access unit) to a project which built and compiled
   perfectly without any problems. Now when I build the project , a message
   error while linking occurs and the project compilation does not
   complete.  Since there are no other messages that could point me in the
   direction of where to look for the problem - I have no idea as to how to
   sove this.
 
 
  Use the command line to find out.
  fpc project1.lpr -options
 
 
  Lazarus really needs to show these errors, I think it skips part of the
  error and only reads some of it (the non-important part in this case). It
  won't tell you that as.exe or as is missing, and other things.
  Or, maybe TProcess is not capturing all the messages, or just capturing
  the very last error message when in fact we need about 3 lines up.

 FPC prints the linker errors followed by 'error while linking'. That's why
 the IDE prints all messages in front of such a message.
 Can you give me an example of skipped important messages?


 Mattias


I sometimes only get:
  error while linking

But no other information, because lazarus pins in on that line only. Or is it
FPC that is doing that when you don't Build All?

Or copy all messages to clipboard maybe solves my problem in some cases?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] SynEdit

2006-03-31 Thread L505
On 3/31/06, George Birbilis [EMAIL PROTECTED] wrote:
 Is the Lazarus SynEdit version available at synedit.sf.net or some private
 Lazarus modification of it?

It is a private modification.
So the one from sourceforge will not work. Sources for lazarus one are on your
hard drive under /components/synedit/

You may be able to get the Lazarus one to work in Delphi, but the one from
source forge would not work out of the box in lazarus.


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changing SynEdit

2006-03-16 Thread L505

   Unless you have in depth knowledge about how every bit of ansistring
   memory management works, using getmem and freemem and pchars are
   simpler, no? Because you are not battling the automatic memory
   management. Now, if you are an expert in battling the automatic memory
   management maybe you can battle ansistrings enough to be almost or just
   as fast as pchars. Is this what we are doing in the fpc sources? I will
   have to look, and see.
 
  Yes.

 For example: The codetools use ansistrings. Less than 1% use PChars.
 Just avoid the + operator as you would avoid ReAllocMem and StrCopy.

However, string[i] isn't so convenient as the '+' operator because you have to
think about all your calculations quite a bit. Really string[i] is smart
pchars.

Stringbuffer type would allow you to use the + operator and eat your cake too,
because every time you use the + operator the getmem() is not called.

Further benefits of StringBuffer type will have to be explored - at this point
it does'nt have enough benefits to be justified since you can just get along
with string[i].


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] FPC 2.1.1 and spaces in output path

2006-03-12 Thread L505
 i dont know if this is a known problem, and if its a lazarus problem or fpc

 i have setup an fpc 2.1.1 from yesterday and use the fpc.exe as compiler to
 use crosscompiling.
 works fine but when spaces are in the output path ppc386.exe has an problem
 example:
 Output Path : c:\fpc test\
 ppc386 says : cant write to c:\fpc permission denied


I think I've seen some note before saying to not use spaces for the install
directory

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] Sniffing Synedit Tokens

2006-03-11 Thread L505
Hi when a Var parameter is to be passed, holding a TPersistent object like below
(tmpattr)...

  syn1.GetHighlighterAttriAtRowCol(syn1.CaretXY, tmpstring, tmpattr);

..is it wrong to create tmpattr first? Is it just a reference to an existing
TSynHighlighterAttributes

When I create and free a storage 'tmpattr' I get access violation and this is
why I'm wondering.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Sniffing Synedit Tokens

2006-03-11 Thread L505

 Actually, the parameter coud/should be 'out' (but I guess FPC doesn't
 even implement the COM-ish things ;-)

  'out' is implemented and used.

  Michael.


I've used it before :) 

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] Synedit patch

2006-03-11 Thread L505
Implemented GetHighlighterAttriAtRowColEx from looking at Delphi synedit. Better
token sniffing available.

See attached.


synhighattrex.patch
Description: Binary data


Re: [lazarus] Synedit patch

2006-03-11 Thread L505

 Implemented GetHighlighterAttriAtRowColEx from looking at Delphi synedit.
Better
 token sniffing available.

 See attached.



also, we might want to make some of those OUT instead of VAR parameters if you
think it is better. Did not do that in the patch, please implement that if you
want.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: Mozilla Plugin Panel component

2006-03-09 Thread L505


  Just wondering how exactly you are doing it ? Are you linking to gecko or
  embedding the window itself ? If the latter, the way under the linux is to

 I embed the window itself.  No reference to Gecko at all, though that
 was my first attempt at the component.

 I found an article on the Borland Developer Network about how Borland
 managed to get Gecko embedded inside an application window for Kylix.
 It was a bit ugly though.  It would have been nice though, because
 then I could use any plugin Mozilla supports or display fancy html
 (with CSS) inside the window.  Even control it via Javascript would
 have been nice. :-)

On Winblows you can embed any application inside a window with SetWindowPos,
although
I'm not sure how much CPU it takes to continually readjust a window with
SetWindowPos.
(setparent does not work because of the application belonging to a separate
process space)
Then send messages to the application's API. To make it look even more embedded,
turn
off the top window title bar with another API command. Of course with all the
dumb
Windows XP skins out there, each application probably won't match your parent
application
anyway. This trick is much easier to use if your applicaiton uses a generic
skin.
i.e. the standard OS skin default.


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Object pascal a Modern Language

2006-03-05 Thread L505
   I guess it's not so hugely useful or else someone would have
   contributed it already.
 
  Mmm... if that was the case I wouldn't be programming because everyone has
  already implemented what I'm trying to program :-)
 
  Seriously though - it would mean less calls to SetLength when doing big
  operations on strings. Ansistrings work fine when you are doing small random
  concatenations but when you do tons at once they are much slower and you
must
  resort to the following:
 
  setlength(string, NewMaxValue);
  string[i]:= 'string I want to concatenate';
 
  instead of
 
  string:= string + 'string I want to concatenate';

 If it helps, we could add a function to TStrings:

 Function TStrings.Concatenate : String;

 begin
 end;

 Which would optimize the whole matter into a single 'getmem' call ?
 if there is interest, I can add it. It's 30 minutes of work.

 Michael.


But I mean if you are doing things at different times in the program:

for i := 1 to 1000
  DoSomestuff
  s:= string + string;
  DoOtherStuff
  s:= string + string;

in other words.. not one big concatenation at once such as:

string.concatenate(string1, string2, string3, string4);

The only way I saw it possible in my mind was through a special string buffer
type (or hey, even a stringbuffer class if not a true system type).

With TStrings.concatenate did you mean an all at once concatenation?

p.s. the reason I mention this was because I was just doing some work with my
friend Tony in pascal server pages for output buffering and we were doing some
benchmarks playing around with setlength calls

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Object pascal a Modern Language

2006-03-05 Thread L505

  But I mean if you are doing things at different times in the program:
 
  for i := 1 to 1000
DoSomestuff
s:= string + string;
DoOtherStuff
s:= string + string;
 
  in other words.. not one big concatenation at once such as:
 
  string.concatenate(string1, string2, string3, string4);
 
  The only way I saw it possible in my mind was through a special string
buffer
  type (or hey, even a stringbuffer class if not a true system type).
 
  With TStrings.concatenate did you mean an all at once concatenation?

 All strings in the list are concatenated in one step, regardless of
 when they were added to the list:

 Sl:=TStringList.Create;
 for i := 1 to 1000 do
  begin
  DoSomestuff;
  SL.Add(SomeString);
  DoOtherStuff;
  SL.Add(SomeOtherString);
  end;
 Result:=SL.Concatenate; // This can be optimized to 1 getmem call.

 Michael.


I suppose this is sort of like SetTextBuff for stringlist :)

And how about if you don't have any line delimiter? i.e. a string buffer with no
CRLF or LF.. does the TStrings type allow to disable the line delimiter?


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Object pascal a Modern Language

2006-03-05 Thread L505
   Sl:=TStringList.Create;
   for i := 1 to 1000 do
begin
DoSomestuff;
SL.Add(SomeString);
DoOtherStuff;
SL.Add(SomeOtherString);
end;
   Result:=SL.Concatenate; // This can be optimized to 1 getmem call.
  
   Michael.
 
 
  I suppose this is sort of like SetTextBuff for stringlist :)
 
  And how about if you don't have any line delimiter? i.e. a string buffer
with no
  CRLF or LF.. does the TStrings type allow to disable the line delimiter?

 That would be the difference between 'Text' and 'Concatenate':
 Text adds CR/LF between the strings, 'Concatenate' would not.

 Michael.


Oh! it has been a while since I looked into the Tstrings source code.. so you're
saying that a tstrings already *IS* buffered and all you would have to do is
implement concatenate function.. because buffering already exists.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Object pascal a Modern Language

2006-03-04 Thread L505

 No, if you need pointer _arithmetic_ you are doing it wrong or using a
 language that is assembly in disguise. Pointers itself are fine and
 dandy, but don't *(x + 3 * i + 2) = *(y - 3);. Would you talk like that
 to a human? No? Why talk like that to a computer then? It's just a sign
 that something in the language is broken when you need to do stuff like
 that (except when writing a heap memory manager, I guess). But I mean
 when you need to do it like all the time, like for arrays (hello C :)).
 Also, by doing stuff like that you throw all bounds checking out of the
 window, so you could as well write it in assembly and spare yourself the
 hassle of using a compiler that brags all the time except where it
 matters.

I've decided that C is now officially the learning language for universities.
Students will now learn about all sorts of computer memory management in C, but
C will never be used for any practical purpose. It serves as the teaching
language of what language we should never use but teaches us a lot about the
memory in a computer. It also serves as a language which makes a programmer
feel happy I'm glad I learned C because it was 8 times harder just to create a
string, and now I'm ahead 8 times by not using C. If I wouldn't have learned C I
wouldn't have known I was 8 times ahead.

  As an aside, I remain adamant that anybody who writes a free software/open
  source program in Java is being foolish. What is the POINT of a free
software
  program that REQUIRES a non-free program just to RUN ?

 I've also wondered about that.. I mean there is gcj and mono and such,
 but... why not do something that is better but our own thing... I've
 looked at parrot for a vm but it's tailored for interpreted languages
 only. sigh.

It's the same as Delphi users doing the JEDI project and allowing borland to use
their code without Jedi getting paid. Borland is smiling and laughing all the
way to the bank while Jedi developers are smiling, but not laughing to the bank.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] turboCASH on Lazarus proof of concept - grid

2006-03-01 Thread L505
   A treeview is a totally different beast than a grid ?
 
  TVirtualTreeView can be a grid, a tree or a combination of both
 
  *looks out window*
 
  Pigs should not fly. I think this is taking object orientation too far. I
  could
  be dead wrong though.

 no, VT is mutch faster than all other grid and list or treeview controls.
 it is designed to be a grid or a treeview

I'm interested in it and will have to check it out some time. I just figured it
may be better (both for advertising what it does, speed of it, and maintenance
of it) as separate components instead of an all in one.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] OpenDelphi.org (off-topic?)

2006-03-01 Thread L505


 Timothy Ha wrote:
  I would like to know your opinion about the new initiative called
  OpenDelphi.org

 That's plainly nonsense. As you can see, even the lazarus and free
 pascal contributors are little compared with other OSS projects. The OSS
 idea is very weak in the delphi/object pascal world. Even worse, a lot
 parts of delphi are written in C++ e.g. the compiler (afaik). So to
 contribute to an Open Delphi, it would be required that people are
 interested in OSS and that they know C++. Even more, considering the
 development speed of the delphi compiler the last years, it's evident
 that the code of the compiler is completely unmaintainable else Borland
 would have added a lot of features which isn't the case.

I have read that is a fact that even the Delphi IDE kernel is written in C++.

I don't know what they consider the kernel (probably the BPL's that power lots
of the IDE) but I'd say a lot of the IDE is powered off the kernel in addition
to the compiler which is also written in
C/C++ and just some GUI display parts are written in Delphi in the Delphi32.exe
file.


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changing SynEdit

2006-03-01 Thread L505
  Widestrings need to be like that for compatibility with c and c++

 Not exactly, they need to be like this because the dang MS COM.
 However I can't see why is this different than the AnsiString vs
 Windows PChar-based API...


I'm off topic here but:
I think there should be a standard reference counting mechanism (standards
comittee?) between language. We have the standard ansi string header embedded in
the ansistring but no standard reference counting mechanism. If this was the
case we could share our ansi strings in DLL's with C++ and other languages.
However There are good reasons for using pchars especially during string
concatenations - ansistrings are dead slow when you are making tons of small
concatenations.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] OpenDelphi.org (off-topic?)

2006-03-01 Thread L505

 The compiler, probably the debugger also, is written in C++ and assembler.

 The IDE itself is written in Object Pascal.
 All packages are definitely in Object Pascal.



Some of the Delphi 5 files check out as follows:

dfwedit.dll is made with borland C++
imged32.dll is made with borland C++
Inkdfm50.dll is made with Delphi
rlink32.dll is made with Borland C++
rw32core.dll is made with Borland C++
lnkdfm50.dll is made with Delphi
borlndmm.dll is made with Delphi
conexprt.dll is made with Delphi
cp3245mt.dll is made with Delphi
dcc50.dll is made with Borland C++
delphimm.dll is made with Delphi


grep.exe is made with Borland C++
imagedit.exe is made with Delphi
make.exe is made with Borland C++
tdump.exe is made with Borland C++
tregsvr.exe is made with Delphi
instreg.exe is made with Borland C++
convert.exe is made with Delphi
dcc32.exe is made with Borland C++ (we knew this one ;) )


I think DFWEDIT.dll is is part of the delphi editor widget.

Source of research? All files were checked with Stud_PE tool.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changing SynEdit

2006-03-01 Thread L505

 On Wed, 1 Mar 2006, L505 wrote:

Widestrings need to be like that for compatibility with c and c++
 
   Not exactly, they need to be like this because the dang MS COM.
   However I can't see why is this different than the AnsiString vs
   Windows PChar-based API...
 
 
  I'm off topic here but:
  I think there should be a standard reference counting mechanism (standards
  comittee?) between language. We have the standard ansi string header
embedded in
  the ansistring but no standard reference counting mechanism. If this was the
  case we could share our ansi strings in DLL's with C++ and other languages.

 Ansistrings are unique to Object Pascal. The implementation of strings in C++
 is completely different.

  However There are good reasons for using pchars especially during string
  concatenations - ansistrings are dead slow when you are making tons of small
  concatenations.

 Sorry, but that is total nonsense. Not more than 'naive' pchars.


My strloadfile benchmark proves that the standard programmer using simple
concatenations with ansistrings will have a serious speed problem in his
application.

Unless you have in depth knowledge about how every bit of ansistring memory
management works, using getmem and freemem and pchars are simpler, no? Because
you are not battling the automatic memory management. Now, if you are an expert
in battling the automatic memory management maybe you can battle ansistrings
enough to be almost or just as fast as pchars. Is this what we are doing in the
fpc sources? I will have to look, and see.

Does it require some simple setlength calls or is it more complex than that?
Does it require less or more lines of code than simply using getmem and freemem?
I bet you end up inserting lots more lines of code to battle the memory manager
instead of just manually taking control of it yourself.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changing SynEdit

2006-03-01 Thread L505

  I'm off topic here but:
  I think there should be a standard reference counting mechanism (standards
  comittee?) between language. We have the standard ansi string header
  embedded in
  the ansistring but no standard reference counting mechanism. If this was the
  case we could share our ansi strings in DLL's with C++ and other languages.

 Ansistrings are unique to Object Pascal. The implementation of strings in C++
 is completely different.

Which is why we need a standard implemented for OTHER languages to follow and
implement.  As pascal users, we follow all sorts of standards designed by C
programmers and never think to implement our own standards for other's to
follow. Not to mention we use all sorts of C dll/dso's but you rarely (never?)
see any C people using pascal  DLL/DSO's. It is this trend that makes Pascal
weaker and weaker with time.

We follow COM and CORBA, for example, it ain't written by a Pascal programmer.
So I don't see what is so hard about someone else following a standard
ANSISTRING ref counting specification written by Pascal inventors.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changing SynEdit

2006-02-27 Thread L505
 is there some kind of official maintainer for the SynEdit component
 in Lazarus? I'd like to discuss some changes that were to the original
 SynEdit code and some new features (and refactors and restructuing ;-)
 I'd like to play with...

 Best regards,
 Flávio



I'm not the maintainer and I have no right to say this but I think you guys
should merge efforts and include the lazarus ifdef's right into the releases of
the Delphi synedit project.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changing SynEdit

2006-02-27 Thread L505
 Basically, yes. But as a matter of fact, what I was thinking about it
 to stop wasting my time developing for Delphi and finally shift my
 focus to Lazarus...

How does M.H. and the rest of the Synedit developers feel?
I have Delphi 5 too btw.

Some of the ifdefs might even be able to be taken out but I'm not sure. Because
FPC/Delphi compatibility has gotten better and better with time and I think M.G.
made those ifdefs way long ago back when FPC/Delphi compatibility was not as
good as it is today.


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Program plugin

2006-02-24 Thread L505

 If you choose for a dll system, I would choose Interfaces (and indeed,
 don't pass strings, dyn arrays or classes)

 Marc


I don't have much experience with interfaces and would like to learn more about
them. Can you import/export one to and from other languages? i.e. c++/c/etc.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] FPC source directory

2006-02-23 Thread L505
 Now, in Lazarus while trying to set FPC path I get error message:
 The FPC source directory usr/lib/fpc/2.0.2./units/i386-linux/ does
 not look correct. Normally it contains directories like rtl, fcl,
 packages, compiler, ...

 This folder include some of folders mentioned but not other such
 packages.

 What is the proper relative path in this case? I remember that I had
 same problem on previous Lazarus and what I did was to download FPC
 sources package, unpack into a permanent folder as it is and set this
 path to Lazarus FPC path. Is this a correct approach?


The skeleton of directores should look like what is in your /lazarus/fpcsrc/
directory.

If you want to make the skeleton fpc source directories of what lazarus looks
for, follow what exactly is in /lazarus/fpcsrc/ and then point it to your new
skeleton. If you are looking for a pre-made set up just use /lazarus/fpcsrc/
from the latest lazarus installation (fpc 2.0.2 I beleive)

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Program plugin

2006-02-23 Thread L505

 Could someone give me an idea? I am writing an application to which I
 hope to add functionality later. One option would be to simple send out
 the new exe to all users. However, I would like to implement a plugin
 system. So a new feature could simply be added and totaly integrated to
 the original application. It is important to note that the application
 has no idea what is going to be added later.

 Any ideas anyone?


Notes:
If you want people to build plug-ins in other languages than Pascal (visual
basic, C++, C, etc) then don't use ansistrings or objects since they are
specific to Pascal.
Who is your market? People who own copies of Delphi/FPC or people who own copies
of Visual Studio, Delphi, VB, FPC, and more?

If using a DLL system and you want to export ansistrings from a DLL you can use
a memory manager trick similar to the trick being used in Pascal Server Pages
1.6.X project.

The memory manager trick to export ansistrings from a DLL is:

program MySoftware;

// export memory manager from executable (software hosting the plug-ins)
procedure ExportMemMan(out MemMan: TMemoryManager); stdcall;
begin
  GetMemoryManager(MemMan);
end;

function TestAPI: string;
begin
  result:= 'hello, this is the API in the exe ';
end;

exports
  ExportMemMan name 'GetSharedMemMan',
  TestApi;

begin
end.


library MyPlugin;

var
  GetExternalMemMan: procedure(MemMan: TMemoryManager);
  TestApi: function: string;
  MemMan: TMemoryManger; //storage of received mem manager
begin
  // get handle of EXE
  ExeHandle:= loadlibrary('yourprogram.exe');
  // import exe memory manager into DLL plug-in
  GetExternalMemMan:= getprocaddress(ExeHandle, 'GetSharedMemMan');
  GetExternalMemMan(MemMan);
  SetMemoryManager(MemMan);
  // You can now use ansistrings in dll

  TestApi:= getprocaddress(ExeHandle, 'TestApi');
  showmessage( TestApi() );
end.

Above ansistring memory manager trick should work with FPC and Delphi plug-ins,
which means Delphi developers and FPC developers will be able to make plug-ins
for your program, not just fpc developers.

The most powerful plug in systems have communication systems both held inside
the exectuable and the dll. Many people make the mistake of thinking only the
DLL can export, when in fact the program itself can contain an API of it's own
that is exported which the DLL can talk to. A simple example plug-in system that
uses an API held inside the EXE is implemented in LazarusRB in plugger_api.pas

If it is objects that you need to export then you can make procedural wrappers
that export each and every procedure/variable from that class, then reimport
them with a wrapper again. Take a look at LazarusRB sources for an example of
that system in plugger_api.pas and PluggerWrapper.pas.

Or of course you also can wait until fpc is able to export BPL style packages,
which again will only work with FPC and not plug ins built with Delphi or other
languages like C/C++/VB. It depends on your needs and the type of program it is.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Showing URL in default browser

2006-02-21 Thread L505


  It would be nice, if someone would write a package with a component to start
  a browser. Preferably without opening a new page/tab on every call.
  I added examples/openbrowser/.
  Maybe you want to add the above command for windows.

 This problem is very hard to solve on Unix. I can´t imagine a solution
 that isn´t Desktop-specific or browser-specific.

 Currently on Virtual Magnifying Glass I simply call mozilla-firefox to
 open the page on linux and do a ShellExecute on Windows. Even then, on
 some distros the firefox executable has a different name =/

 I´m not saying it can´t be done, but I´m raising some difficulties and
 asking for ideas on how to solve them =)


Where's the the Lin32 API when you need it?  (Ermm.  good quote of the year)

Does firefox have some sort of API that allows users to remote control it from
another process? Does *NIX itself offer any standard inter-process communication
tactic or must each program contain a home brewed custom server damon (written
from scratch each time) to receive unix sockets or other API/remote
communication?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Win32 Api Calls

2006-02-13 Thread L505
 Can anyone please tell me how can I make calls to the Win32 Api ?
 Is there a unit I must include or something else I must do ?

Windows.pas or Windows.pp unit from FPC is what you need.

Check this out:
http://z505.com/PWAPI1/windows2/index-5.html

Haven't started documenting it yet, LOL

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changes to file on disk warning annoying

2006-01-23 Thread L505

I assume everyone knows in samba the reason is line feeds, but just to make 
sure I
will double verify..  Samba converts files line feeds and this causes the editor
refresh issue

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changes to file on disk warning annoying

2006-01-23 Thread L505

  Mattias Gaertner wrote:
   The files didn't changed on disk, so an automatic refresh would undo
   your current changes.

With samba this is not the case - the files are changed. The line feeds are
converted.

  
   At the moment the IDE does this:
   On saving/opening a file it retrieves the FileAge of the file.
   At several occassions it compares these file dates with the current file
   dates.
   If it changed it gives the user the choice.
  
  It's odd, because both computers sync clocks from the same timeserver -
  which is also located on my network.  I've looked and the clocks appear
  the same, so I assume it's something about going from Linux to Windows
  over NFS that's making it look different.

linefeeds in samba

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Changes to file on disk warning annoying

2006-01-23 Thread L505

  linefeeds in samba
 
 Right, but my point is under SMB it _worked_, but under NFS it
 doesn't... your description sounds like it should be the other way around?

 -Tony

Ahh, I see. So we have two different problems here, but with the similar 
effects: the
refresh dialog window popping up. I guess we will need to analyze both issues, I
didn't read the messages closely enough!



_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] win32 program icon

2006-01-21 Thread L505

 Recently, support for {R$ } directive on linux was added to the
 compiler. I don´t know how this helps, however.

  no idea what that's for in practise... Unix usually goes the other way,
  separating everything, not stuffing everything and their brother into
  one file.

I guess the advantage of having something in one file are that there is no 
dependency
hell. That and you can move around the one single file in a file manager without
worrying whether 5 files need to be copied with it or just 2 with it. If you 
copy
just 3 and you forgot the other 2 dependent files you run into  dependency hell.
I guess there is a point in which the line shall be drawn - the Windows 
registry is
one big file and it is a giant piece of hard to access dangerous un-recommended 
crap.
I find as an application gets larger in size, more things need to be separated 
out.
Same with websites - template files and CSS stylesheets are more and more 
useful as
the site gets bigger.  But for prototypes and quick RAD applications, it is 
sometimes
better to have things in one single pack with the ability to expand outward 
later
(bigger apps uses packages, dynamic libraries, settings files, resource files, 
but
quick rad prototypes are easier to ship in one single executable).

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] bug 0001055 Form autoscroll and Control.Align=alTop

2006-01-17 Thread L505


 Salvatore,

 So if I understand correctly, your panel is not put on the top of the
 form when you set the align property to alTop? It sure seems to be from
 your screenshot!


AlTop should place the panel at the top maximized widthwise. It is not maximized
widthwise in the picture.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Who Discussed Linker Slowness?

2006-01-15 Thread L505
What do PPU files contain? symbolic links or hard links?

See below:


 - The .TPU format doesn't contain symbolic links to other units, it contains 
hard
links to particular offsets in the interface part of other .TPU files. If those 
other
units change their interface, the .TPU is made obsolete and needs to be 
recompiled.

 - Any reasonable update beyond a minor bug fix release is likely to change the
interface of some commonly used units like SYSTEM.  This makes everything 
obsolete.

 - Borland chose to do things this way because it leads to drastic speedups in
linking.  Essentially all the work involved in linking a unit to the units it 
uses
gets done during compile time, and doesn't need to be repeated again when the 
program
is linked.



Quoted from:

http://groups.google.com/group/comp.lang.pascal/browse_thread/thread/9cee95654ec4d045
/0d7281be97540061?q=%22windows+was+written+in+pascal%22hl=en

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Who Discussed Linker Slowness?

2006-01-15 Thread L505




 On Sun, 15 Jan 2006, L505 wrote:

  What do PPU files contain? symbolic links or hard links?

 They don't contain links at all.
 The accompagnying  .o files contain symbolic links, as they are standard
 elf or pecode object files.

 Michael.


Ahh I see.. does microsoft visual studio create similar pecode object files? I'm
thinking maybe one reason borland delphi compiler/linker is so fast is because 
of
these hard links - but I'm no compiler guru yet. As for C++ Builder I'm not 
sure,
I've heard it was slow compiler/linker.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Who Discussed Linker Slowness?

2006-01-15 Thread L505

 So in short: The only way to get a major speedup in linking is to have an
 internal linker so the .o is not needed anymore and can be stored in the
 ppu. But i don't have the time to code such an internal linker so don't
 expect anything before 2007.



And I wonder about the Windows.a and Windows.o file, do you think borland uses 
some
magic tricks there or do they actually just treat the windows.tpu/windows.dcu 
file
just like any other dcu file. I guess I will look at the DCU file and report 
back
with more information, but it is hard to say whether they place the entire dcu 
file
into memory or whether they have some other magic tricks up their sleeves.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Who Discussed Linker Slowness?

2006-01-15 Thread L505

 All those external references to DLLs are generated by the linker and don't
 need to be stored in the dcu. For FPC we can do the same since ld now also
 supports direct linking to DLL files. When the FPC port to win32 started
 that was not the case.


I remember that was discussed in the article you pointed out, thanks for 
clearing
this up. I wonder how much this will improve speed, I think the article said 
10-25
percent. Only experimenting will tell I guess :-)

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Who Discussed Linker Slowness?

2006-01-15 Thread L505
 You can expiriment yourself, use the 2.1.1 compiler from today and compile 
 everything with option -WI-.


Oh! Send -WI- to the compiler? or the linker with -k ?

Lars

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-14 Thread L505

 Yes, this is my favourite. As you can imagine, on embedded
 nano-computers every single byte has to be checked if it does something
 useful, the other ones have to go home. ;)

Do you think the PStrList will be useful, and some other fake (byte friendly)
classes (objects) in CompactUtils? I know pure arrays and and simple variables
without any objects at all, will save bytes, but hey wouldn't it be nice to 
have some
of object oriented programming without the cost of bytes?

Yes in your case embedded programming will not benefit from DLL programming of
course - in fact dll programming is more inefficient than static linking 
because with
static linking you don't have to load the entire DLL with wasted functions in 
it.

I'm not one of those dudes who is anal about having Exe's small - it's just a 
matter
of having a leading advantage of being able to upload a nice small 30kb 
powerful CGI
program and of course being able to work with embedded systems. That is one 
advantage
with FPC is being able to work with embedded systems, over say python or perl. 
I'm
sure people would love working with Pascal rather than C for embedded systems, 
but in
order for Pascal to have a chance in embedded systems we must have projects 
like this
compactutils and system.ppu replacements, otherwise people will have to resort 
to C.
Because the big 30kb hello world exe and the 90kb hello world exe with sysutils 
in
the uses clause is not good for embedded systems.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-12 Thread L505

  What does your DOS window say after you stripped the DLL?

 Nothing peculiar. As to the .dll.dll I just choosed not to fix it :)
 since this was just for a test any-way.

Since Vincent has indicated lazarus ships with a non-smartlinked RTL, you may be
pulling in a big sysutils in your case causing the extra size. I don't know if 
that
is the reason or not. And again just to be sure, take all debugging checkmarks 
off
too.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Compiler speed?

2006-01-12 Thread L505

 Delphi was very quick. Is there something about the FPC that is
 fundamentally different from the Borland compiler that makes Lazarus
 'seem' slower to compile?


It's the linker and it is GNU's fault not FPC.
If there is a custom linker built this may solve the problem, or maybe we could 
look
into why the linker is so slow and get the C programmers to do the work - I 
haven't
done any research on it but surely this has come up in conversation before on 
the C
lists somewhere.


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] dyn. linked lazarus

2006-01-12 Thread L505
 On Thu, 12 Jan 2006 22:01:21 +0100
 Florian Klaempfl [EMAIL PROTECTED] wrote:
 
  I was just able to link lazarus dynamically against the fpc rtl/packages:
  
  [EMAIL PROTECTED]:~/fpc/lazarus$ ls -l lazarus.dynamic
  -rwxr-xr-x  1 florian florian 7381916 2006-01-12 21:51 lazarus.dynamic
  [EMAIL PROTECTED]:~/fpc/lazarus$ ldd ./lazarus.dynamic
  linux-gate.so.1 =  (0xe000)
  libfprtl-2.1.1.so = /usr/local/lib/libfprtl-2.1.1.so (0xb7ea4000)
  libglib-1.2.so.0 = /usr/lib/libglib-1.2.so.0 (0xb7e8)
  libgdk-1.2.so.0 = /usr/lib/libgdk-1.2.so.0 (0xb7e49000)
  libX11.so.6 = /usr/lib/libX11.so.6 (0xb7d89000)
  libgtk-1.2.so.0 = /usr/lib/libgtk-1.2.so.0 (0xb7c4e000)
  libXi.so.6 = /usr/lib/libXi.so.6 (0xb7c45000)
  libXext.so.6 = /usr/lib/libXext.so.6 (0xb7c38000)
  libm.so.6 = /lib/tls/i686/cmov/libm.so.6 (0xb7c16000)
  libgdk_pixbuf.so.2 = /usr/lib/libgdk_pixbuf.so.2 (0xb7c02000)
  libfpfcl-2.1.1.so = /usr/local/lib/libfpfcl-2.1.1.so (0xb7b91000)
  libfppaszlib-2.1.1.so = /usr/local/lib/libfppaszlib-2.1.1.so
  (0xb7b7c000)
  libfphash-2.1.1.so = /usr/local/lib/libfphash-2.1.1.so
  (0xb7b77000) libdl.so.2 = /lib/tls/i686/cmov/libdl.so.2
  (0xb7b74000) libc.so.6 = /lib/tls/i686/cmov/libc.so.6
  (0xb7a46000) libfpnetdb-2.1.1.so =
  /usr/local/lib/libfpnetdb-2.1.1.so
  (0xb7a3c000)
  libfplibasync-2.1.1.so = /usr/local/lib/libfplibasync-2.1.1.so
  (0xb7a39000)
  libpthread.so.0 = /lib/tls/i686/cmov/libpthread.so.0 (0xb7a27000)
  libgmodule-1.2.so.0 = /usr/lib/libgmodule-1.2.so.0 (0xb7a23000)
  libXau.so.6 = /usr/lib/libXau.so.6 (0xb7a2)
  libXdmcp.so.6 = /usr/lib/libXdmcp.so.6 (0xb7a1c000)
  /lib/ld-linux.so.2 (0xb7fc)
 
 Is this, what I hope, it is?
 
 How do you created the fpc dyn libs?
 
 Mattias
 

Florian needs to offer a download and show off to people what it is, i.e. zip 
file.
That's what I use PasWiki for - prostituting all my download show-offs.


_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-12 Thread L505

 Oh! It makes me think: are you compiling under linux to produce this

Nope.

 dll? Else, is there a way to have the rtl smartlinked for windows?


Well since I use fpc 2.0.2 the RTL is smartlinked. I think you are using the 
compiler
that comes with lazarus.

i.e. in environment options, I set my compiler up as a custom one in my own
directory, such as C:\FPC_2.0.2\



_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] Who Discussed Linker Slowness?

2006-01-12 Thread L505
Maybe others have discussed the slowness of the GNU linker before (C 
programmers, for
example).. and maybe the gnu/gcc team can offer some answers as to if the speed 
of
the gnu linker is going to be improved or not. So far some simple searches don't
reveal anything.

http://www.google.com/search?q=%22gcc%20linker%20is%20slow%22
http://www.google.com/search?q=%22gnu%20linker%20is%20slow%22
http://www.google.com/search?q=gcc+%22linker+is+slow%22
http://www.google.com/search?q=gnu+%22linker+is+slow%22

Not much in the above searches, which tells me not many people are going to be
working on the GCC linker speed.

I know that maybe it is possible for fpc to create its own linker, but if the 
gnu
linker speed can be improved we might as well make use of it.

If anyone finds some mailing lists or internet sites that show discussion if the
gcc/gnu linker speed being improved (or why it is slow) please post in this 
thread.
If no one has even made a note to the gcc tool chain team that the linker is 
slow,
maybe they won't improve it?  Maybe they feel people are satisfied with the 
speed?

Of course it is probably the Win32 linker that is the real slow one, and I 
don't know
why that is - so any mailing lists threads or sites you know of please post 
them here
and/or discuss.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-12 Thread L505
 Marvelous! I'll try that and it will most probably work. I'll come

If you decide to use fpc 2.0.2 remember that when you build a normal lazarus GUI
style application you may have to change back to your old compiler in the 
lazarus
directory.
The lazarus packages and components I think need to be recompiled with the new
compiler you choose if you decide to build a gui application.

Myself I built a custom version of lazarus 0.9.7 with fpc 2.0.2 and all it's
components and packages. What I would do if I were you would just switch back 
to your
old compiler when you decide to build a gui program

 later with results... I still don't know why your dll was working and
 not mine. If this is because of the smartlinking issue... well...
 hum... I don't know what to say.


Me neither, what was the error? I was hoping it was simply because you forgot to
rename mydll.dll.dll to mydll.dll or something simple like that. But I assume 
you
renamed it and it found the DLL correctly when statically pulling it in on
application loading?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-12 Thread L505

 Yes! This is finally working! The compiled exe with smart linking is
 274kb (was 272kb without...) yet after striping the dll I get 91648
 bytes exactly as your dll. And finally the dll is working with my
 obscure devel. language.

 Now, it would be great if the devel edition of fpc was working. :)

 Thank you very much for your help, L505, on all this issue.


Try also compactSysUtils if you want a 40KB dll
It is a drop in replacement for this particular situation :)

See all this fooling around with compilers is why people use scripting 
languages and
just forget about size issues - the time we've spent chasing this down, the 
time we
spent... :)

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Who Discussed Linker Slowness?

2006-01-12 Thread L505

 An extra handicap for the linker is the fact that the windows unit, 
 which is rather large is always smartlinked, resulting in (I estimate) 
 ten thouands of object files (archived in the .a file). You probably 
 won't have this amount of .o files in c programs.
 
 Vincent.
 

Windows.ppu is about 1.692 MB in size, quite a big .ppu file
libwindows.a is about 3.451 MB in size, quite a big .a file

what do C programs use for the windows API interface?
Isn't it a huge C header file that gets put into a .a/.o file?

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-12 Thread L505

  later with results... I still don't know why your dll was working and
  not mine. If this is because of the smartlinking issue... well...
  hum... I don't know what to say.
 

 Me neither, what was the error? I was hoping it was simply because you forgot 
 to
 rename mydll.dll.dll to mydll.dll or something simple like that. But I assume 
 you
 renamed it and it found the DLL correctly when statically pulling it in on
 application loading?


Also maybe your DLL problem is somewhat related to Tony Pelton's DLL problem he 
had.
He said when he used Lazarus his DLL didn't work, but when he chose the FP IDE 
his
DLL worked. Which compiler version are you using with Lazarus and which Lazarus
version?

To me this sounds like certain compilers don't create good DLL's but FPC 2.0.2 
does.
Or like you say it could also be a case of a non-smartlinked RTL causing the 
problem,
but we could try a non-smartlinked RTL with fpc 2.0.2 and see what happens 
too...

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-11 Thread L505
 Maybe
 having the 'mydll.compiled' file could help (if there is any)... I
 think this is the file that has the compiler settings.
 


The LPI file carries the settings

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Help with DLL (using pchar, etc.)

2006-01-11 Thread L505
As an experiment for CompactSysUtils project I started a while ago, I have used 
this
opportunity to demonstrate why FPC should reorganize the FPC sysutils unit for 
better
smartlinking (i.e. create just one more unit than just sysutils to take care of
smartlinking).

Many functions in the FPC sysutils unit do not rely on any finalization or
initialization code.

By simple copy and pasting some of the sysutils functions into a unit of my own,
called CompactSysUtils, I have gotten the DLL down to 40KB which was previously 
91KB

Project files showing 40KB DLL versus 91KB DLL is here:
http://z505.com/pascal/MD5Hash/MD5Hash_COMPARE.zip

CompactUtils and CompactSysUtils project is here:
https://opensvn.csie.org/pspcgi/psp-lib-1.5.0-devel/src/extras/CompactUtils/

In order to compile the CompactUtils version in that zip file, you will need the
latest copy of the compactutils.pas and compactsysutils.pas which is located on 
the
SVN link above.

Sometimes we don't worry so much about bloat like this since today's 
processors are
getting faster, but this one is a no brainer. There is no work to be done 
other than
copy/paste functions and reorganize them such as I have done with 
CompactSysUtils
project. I have also made notes about this before on the mailing lists, such as
mentioning how the findpart function can be cut copied and pasted right out of 
the
StrUtils unit so that no sysutils initialization and finalization is hauled in.

Maybe people can learn from this with the lazarus project too - as I'm guessing 
some
(not all) the reason lazarus exe's are so big is because or simple
initialization/finalization bloat. Sure there are abstraction bloat that is 
incurred
for multi-platform programming in SOME CASES, but I've just proved with above
CompactUtils project that abstraction has nothing to do with the majority of the
bloat in this case. Rather simple reorganization in this case, to cut the EXE 
and DLL
in half (actually, *more* than half).

So either I continue to maintain this compactutils project with my elite
cutting/copying/pasting skills or the FPC team decides to reorganize sysutils 
at the
distribution level (i.e. kill the compactutils project and just do it in the RTL
itself). Also anyone wishing to participate in this compactutils project I
started is welcome - I started it to gain smartlinking knowledge myself and I'm 
sure
others could benefit from knowing more about smartlinking.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Document (virus!!)

2006-01-09 Thread L505
 And I couldn't resist knocking you off your unix high horse. This should 
 have
been
 posted to pascal-other, both your message and mine. Oh, but there is no
lazarus-other
 so it had to be said right here and now.
 

 This was just a joke, don't need to be so anal retentive.
 

 Gee, even I knew your original post was a joke... but smiles don't
 translate well in text.

This is why I guess I've reduced my joking in the past years and have tried to 
be
more serious in life. The problem is all jokes do have some seriousness to them

Who's to say my post was not a joke too? (it was a joke, actually, I wasn't 
starting
a flame war but rather cracking a joke about a unix freak being on a horse). If
everyone jokes no one will hear the wolf cry when there is something serious 
being
said. Reduce jokes to a minimum - don't watch comedy shows. Do programming 
instead. I
have a tendency to joke, but I've been reducing and reducing over the past few 
years
because I've learned that jokes are usually always negative rather than 
positive.

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Lazarus RB Edition w/Plugger

2006-01-04 Thread L505
  Links:
Download and Info
  http://z505.com/cgi-bin/qkcont/qkcont.cgi?p=Lazarus-RB-Edition
Direct Download
  http://z505.com/download/lazrb/LazRB_0.9.7Alpha.zip

 Is this the newest version?
 Where is the lazarus stuff?


 Mattias


The latest version is on SVN.. I'm actually way behind in implementing more 
stuff
into LazarusRB because I'm working on Plugger for the Syn Text editor too. The
plug-ins that I have now, work for Syn text editor and Lazarus. Why? because I 
use
Syn to create and edit html pages on MS Windows.. And Lazarus isn't exactly an 
HTML
editor.. so there are some uses right there for the DLL cross-application 
plug-in
system.

I will not be continuing the LazarusRB as a separate branch forever - there are 
so
many bug fixes that are implemented into the main Lazarus branch, that it would 
be
silly and makes no sense for someone to make a separate long term LazarusRB 
branch.

What will happen is either I will run patches on the latest lazarus realease (to
implement plugger into the latest version of lazarus), or our two branches 
(main and
RB) will merge together and there will be no lazarusRB branch at all. I just 
wanted
to prove the idea of a DLL plug in system works, in addition to component 
plug-ins
like BPL's. I feel both BPL plug-in systems and plugger systems are worth it in
Lazarus, myself.

Check these links for hot stuff:

Latest SVN
 https://opensvn.csie.org/pspcgi/LazarusRB/

Showing lazarusrb in action:
 http://prdownloads.sourceforge.net/pascal-webdev/Winkpsp_vid1.zip?download

Showing a lazarus plug-in working in a Syn editor too:
 http://z505.com/syn/winkSyn_2.htm

_
 To unsubscribe: mail [EMAIL PROTECTED] with
unsubscribe as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


  1   2   >