RE: What I want in CF (was: Learning ASP)

2000-09-01 Thread Benjamin S. Rogers

I agree to a certain extent, however, I do not feel that Allaire's efforts
are best spent developing an XML parser for ColdFusion. In my opinion, too
much work needs to be done to the existing code base and functionality.

Perhaps the best of both worlds would be if Allaire picked one parser (say
Xerces) and redistributed that with the server. I think I'd rather have
Allaire point the developers in a direction rather than reinventing the
wheel.

In any case, it is what it is. There are plenty of solid XML parsers out
there that can be incorporated into ColdFusion apps. I would just pick the
one that claims 100% compatibility and let everyone else worry about making
theirs work with yours.

Now, all that said, I wouldn't mind seeing a native XML parser built into
ColdFusion if they fixed everything else first. :)

Benjamin S. Rogers
Web Developer, c4.net
voice: (508) 240-0051
fax: (508) 240-0057

-Original Message-
From: Steve Bernard [mailto:[EMAIL PROTECTED]]
Sent: Thursday, August 31, 2000 4:25 PM
To: [EMAIL PROTECTED]
Subject: RE: What I want in CF (was: Learning ASP)


MSXML.DLL, right? This will work on NT but, doesn't help *NIX users. I feel
that an XML parser would be beneficial enough that it should be included in
CF. Right now only a portion of the developer base can make use of
MSXML.DLL. There's the OS issue and the fact that the developers need open
access to CFOBJECT. These two things will limit a lot of developers,
especially those in remotely hosted environments. Also, MSXML, while
steadily improving, is NOT 100% W3C XML 1.0 compliant. Version 3.0 Beta, the
most recent, is approx. 95-97% compliant so things look good but, it still
has some issues to resolve relating to non-existent or malformed unused
entities, attribute-value normalization, end-of-line handling, and reporting
validity constraints when running in non-validating mode. Ok, so MSXML isn't
100 compliant, so what? Well, if I use MSXML and you use Xerces (Apache
Project's XML parser) we may come up with different results. I'd rather have
everyone using one parser that is 90% compliant than 10 parsers, each of
which produces slightly different results.

Steve

-Original Message-
From: Benjamin S. Rogers [mailto:[EMAIL PROTECTED]]
Sent: Thursday, August 31, 2000 10:16 AM
To: [EMAIL PROTECTED]
Subject: RE: What I want in CF (was: Learning ASP)


XML parser. Enough to check well-formedness with the option
to validate against a DTD. It doesn't have to "execute" the XML.

If you are on NT, what about the XML Parser that comes with Internet
Explorer? Many people have been using this successfully from within
ColdFusion Apps.

Benjamin S. Rogers
Web Developer, c4.net
voice: (508) 240-0051
fax: (508) 240-0057


--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-09-01 Thread Steve Bernard

Fixing old problems is definitely more needed than new features like XML. I
wasn't suggesting that Allaire develop a proprietary parser, but rather, do
exactly as you said and plug in a third-party parser. Granted, I am assuming
that there is a vendor who makes a parser for both Windows and *NIX systems.
This method is exactly what Allaire does now to provide a lot of the core
functionality of CF. It is also used as an excuse when things don't work out
as well as they should. When I've requested better RegEx support from
Allaire, they've kept saying, "It's not our fault, the third-party RegEx
engine we use doesn't support those features." A more prominent example is
CFHTTP. Prior to the 4.5.x series CFHTTP didn't support SSL. Why? Because
Allaire used the WinInet.dll library, which doesn't allow the use of SSL.
They changed libraries and now we have SSL support but, other problems
persist. So, it goes both ways and shows that it really isn't all that hard
to plug new features in if you have developed a framework that allows for
it.

Steve

-Original Message-
From: Benjamin S. Rogers [mailto:[EMAIL PROTECTED]]
Sent: Friday, September 01, 2000 12:35 AM
To: [EMAIL PROTECTED]
Subject: RE: What I want in CF (was: Learning ASP)


I agree to a certain extent, however, I do not feel that Allaire's efforts
are best spent developing an XML parser for ColdFusion. In my opinion, too
much work needs to be done to the existing code base and functionality.

Perhaps the best of both worlds would be if Allaire picked one parser (say
Xerces) and redistributed that with the server. I think I'd rather have
Allaire point the developers in a direction rather than reinventing the
wheel.

In any case, it is what it is. There are plenty of solid XML parsers out
there that can be incorporated into ColdFusion apps. I would just pick the
one that claims 100% compatibility and let everyone else worry about making
theirs work with yours.

Now, all that said, I wouldn't mind seeing a native XML parser built into
ColdFusion if they fixed everything else first. :)

Benjamin S. Rogers
Web Developer, c4.net
voice: (508) 240-0051
fax: (508) 240-0057

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-31 Thread Benjamin S. Rogers

XML parser. Enough to check well-formedness with the option
to validate against a DTD. It doesn't have to "execute" the XML.

If you are on NT, what about the XML Parser that comes with Internet
Explorer? Many people have been using this successfully from within
ColdFusion Apps.

Benjamin S. Rogers
Web Developer, c4.net
voice: (508) 240-0051
fax: (508) 240-0057

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-31 Thread Steve Bernard

MSXML.DLL, right? This will work on NT but, doesn't help *NIX users. I feel
that an XML parser would be beneficial enough that it should be included in
CF. Right now only a portion of the developer base can make use of
MSXML.DLL. There's the OS issue and the fact that the developers need open
access to CFOBJECT. These two things will limit a lot of developers,
especially those in remotely hosted environments. Also, MSXML, while
steadily improving, is NOT 100% W3C XML 1.0 compliant. Version 3.0 Beta, the
most recent, is approx. 95-97% compliant so things look good but, it still
has some issues to resolve relating to non-existent or malformed unused
entities, attribute-value normalization, end-of-line handling, and reporting
validity constraints when running in non-validating mode. Ok, so MSXML isn't
100 compliant, so what? Well, if I use MSXML and you use Xerces (Apache
Project's XML parser) we may come up with different results. I'd rather have
everyone using one parser that is 90% compliant than 10 parsers, each of
which produces slightly different results.

Steve

-Original Message-
From: Benjamin S. Rogers [mailto:[EMAIL PROTECTED]]
Sent: Thursday, August 31, 2000 10:16 AM
To: [EMAIL PROTECTED]
Subject: RE: What I want in CF (was: Learning ASP)


XML parser. Enough to check well-formedness with the option
to validate against a DTD. It doesn't have to "execute" the XML.

If you are on NT, what about the XML Parser that comes with Internet
Explorer? Many people have been using this successfully from within
ColdFusion Apps.

Benjamin S. Rogers
Web Developer, c4.net
voice: (508) 240-0051
fax: (508) 240-0057

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-30 Thread Erki Esken

 I'm sure I'll think of more...  I don't suppose there's any Allaire
 programmers reading this list taking notes, are there? ;-)

There's always the "ColdFusion Enhancement Requests" section in Allaire
Support Forums. Does anyone have some spare time to collect the ideas
from this thread and post them there?


Erki

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-30 Thread Jeremy Allen

*chortle*

There is always CF to keep you entertained with
its error messages.. I dont think I could live
with out gems like this.

-
Error Diagnostic Information

An error occurred while evaluating the expression:


 tmp = Evaluate("structCPage.strLink"  #i#, "")



Error near line 27, column 8.



An error has occurred while processing the expression:




The reason for the error is unknown.



The error occurred while processing an element with a general identifier of
(CFSET), occupying document position (27:2) to (27:56) in the template file
D:\DONT\YOU\_WISH.CFM.


Date/Time: 08/30/00 11:23:27
Browser: Mozilla/4.0 (compatible; Zen 9.99; Ack NT; ??)
Remote Address: again.dont.you.wish
HTTP Referer: http://notachance ;)
Query String: fa=ValidateDataCFID=zzzCFTOKEN=zzz



Of course I realized the error immediately (that was a SetVaraible so the
 , "" has to go but obviosuly CF doesnt get itG

-Original Message-
From: Erki Esken [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, August 30, 2000 6:19 AM
To: [EMAIL PROTECTED]
Subject: Re: What I want in CF (was: Learning ASP)


 I'm sure I'll think of more...  I don't suppose there's any Allaire
 programmers reading this list taking notes, are there? ;-)

There's always the "ColdFusion Enhancement Requests" section in Allaire
Support Forums. Does anyone have some spare time to collect the ideas
from this thread and post them there?


Erki


--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-30 Thread Peter Theobald

I didn't say it was pretty :-)

At 09:21 AM 8/29/00 -0400, Jamie Keane wrote:
God that's kludgy, but if it works it works, eh?  Still, I wish Allaire
would put a more "standardised" and documented syntax, so I wouldn't have to
scratch my head as much. :)

--
Jamie Keane
Programmer
SolutionMasters, Inc.
9111 Monroe Rd., Suite 100
Charlotte, NC  28270
www.solutionmasters.com
704.563.5559 x 228  Voice
704.849.9291  Fax
-Original Message-
From: Peter Theobald [EMAIL PROTECTED]
To: [EMAIL PROTECTED] [EMAIL PROTECTED];
[EMAIL PROTECTED] [EMAIL PROTECTED]
Date: Monday, August 28, 2000 5:53 PM
Subject: Re: What I want in CF (was: Learning ASP)


Cold Fusion is weak in these areas, but really you can do all these things
(or "emulate" them :-) ) using existing features.
(forgive my syntax - I'm writing this quickly)

Pick a standard variable name, like ReturnValue and only use it for
returning a value from a custom tag:
caller.ReturnValue = xxx

Or use the tag's name as a structure:
If NOT IsDefine("MyTagName") {
MyTagName = StructNew()
}
MyTagName.Return = "some data"


Static variables: How static do you want them? :-) Cold Fusion has extra
"scopes" that wouldn't make sense in a standard programming language like
C++ where the application all runs at once. In Cold Fusion you might want
static variables that retain their value (1) for the entire Application, (2)
for the page request (there are more you could define if you tried hard).
Pick a standard word, for example "static" and keep them under Application
and Request. Use a hash of the module name:

In Application.cfm:
If NOT IsDefined('Request.Static')
Request.Static = StructNew()

In module: MyTagName:
Request.Static["MyTagName"] = StructNew()
Request.MyTagName.ThisStaticVar = "some data";

This is now a static variable that will retain it's value for the duration
of this page request through all files and multiple calls to this tag. It is
only "private" within the tag because you make it so with the naming
convention. The same thing can be done under the Application scope (scopes
are structures).

Now the *REAL* problem with Cold Fusion is there is no ability to define a
macro, function, or subroutine to "hide" these details so these kinds of
things are very wordy which encourages mistakes when you have to specify
them a hundred times.

At 02:49 PM 8/28/00 -0400, Jamie Keane wrote:
My biggest complaint with the language is the lack of user-defined
functions.  I know that custom tags are sorta a work-around, but sometimes
a
function just needs to return a value, not just assign a value back to the
calling template.  Also, there's no way (that I know of at least) to pass
values by reference, or declare static variables within the scope of a
custom tag.  While PHP doesn't have the simplicity that CF has in terms of
database twiddling, and its error handling leaves a bit to be desired, it
does have support for user-defined functions that may contain variable
references and static variables, and that helps me out a lot.

--
Jamie Keane
Programmer
SolutionMasters, Inc.
9111 Monroe Rd., Suite 100
Charlotte, NC  28270
www.solutionmasters.com
704.563.5559 x 228  Voice
704.849.9291  Fax
-Original Message-
From: Gregory Harris [EMAIL PROTECTED]
To: [EMAIL PROTECTED] [EMAIL PROTECTED]
Date: Monday, August 28, 2000 2:30 PM
Subject: Re: What I want in CF (was: Learning ASP)


Ok, my wish list now:

1) How about a way to determine whether a dimension exists in an array,
for
instance this works:

ArrayLen(ThisArray)

But if ThisArray were a 2 dimensional array and I needed to figure out the
length of something in dimension 2, using this

ArrayLen(ThisArray[DimensionOne]) breaks the page

Rather than having to go thru the excess overhead of trying to use a
counter, maybe extending Arraylen could help this? Or how about a
ArrayDimensionExists() function?

2) Extending CFHTTP (I think this is a BIG one)

3) Making Structures Multi-Dimensional, or is it possible to do structures
like:

Stuff.Things.MoreThings = ThisVariable

This has never worked with me, the best I could do would be Stuff.Things

I'm sure there are more headaches I've run into, but these are right off
the
top of my head.  What else can everyone think of?

Gregory Harris
Los Angeles Information Technology Agency (ITA)
[EMAIL PROTECTED]


 [EMAIL PROTECTED] 08/28 11:11 AM 
 Dave Watts [mailto:[EMAIL PROTECTED]]
I agree that the interfaces for SMTP, POP, HTTP, etc. need a lot of work.
As
for other stuff, I'm kind of curious. What basic functionality would you
like to see? I can't really think of all that much that I'd like to see
added.


Personally, I've got a laundry list.  :)  However, off the top of my head,
in no particular order (I mentioned most of these at The Con last year,
and
will do so a

RE: What I want in CF (was: Learning ASP)

2000-08-30 Thread !jeff!

blik.  don't do that.  that's one of the beauties of CF by comparison to 
more stringent languages.

I do agree with everything else you've said.

At 03:01 PM 8/29/2000 -0400, Zachary Bedell wrote:
Basically, I'm looking for something that would allow you to force
declaration of variables, types, maximum lengths, etc.  Then you can
specify (perhaps in specifically formatted comments) the requirements
for a variable  have the "compiler" make sure they're in range.
This would completely eliminate any parameter not defined or syntax
type errors on your server (a good thing for the server) and would
make it possible to create a proper CFDoc system a la JavaDoc.  (I
know that's a quick description, but if anyone is interested I could
elaborate...)

!j!

The mark of mediocrity is searching for the precedent.

!jeff! sherwood Director of BIGWORDS.com Web Site Design / JEDI
   BIGWORDS.com worker#2
[EMAIL PROTECTED]   [EMAIL PROTECTED]
.r.e.c.o.v.e.r.e.d.n.e.t.s.c.a.p.e.u.s.e.r. . . . 415.543.1400.x300

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-29 Thread Jamie Keane

God that's kludgy, but if it works it works, eh?  Still, I wish Allaire
would put a more "standardised" and documented syntax, so I wouldn't have to
scratch my head as much. :)

--
Jamie Keane
Programmer
SolutionMasters, Inc.
9111 Monroe Rd., Suite 100
Charlotte, NC  28270
www.solutionmasters.com
704.563.5559 x 228  Voice
704.849.9291  Fax
-Original Message-
From: Peter Theobald [EMAIL PROTECTED]
To: [EMAIL PROTECTED] [EMAIL PROTECTED];
[EMAIL PROTECTED] [EMAIL PROTECTED]
Date: Monday, August 28, 2000 5:53 PM
Subject: Re: What I want in CF (was: Learning ASP)


Cold Fusion is weak in these areas, but really you can do all these things
(or "emulate" them :-) ) using existing features.
(forgive my syntax - I'm writing this quickly)

Pick a standard variable name, like ReturnValue and only use it for
returning a value from a custom tag:
caller.ReturnValue = xxx

Or use the tag's name as a structure:
If NOT IsDefine("MyTagName") {
MyTagName = StructNew()
}
MyTagName.Return = "some data"


Static variables: How static do you want them? :-) Cold Fusion has extra
"scopes" that wouldn't make sense in a standard programming language like
C++ where the application all runs at once. In Cold Fusion you might want
static variables that retain their value (1) for the entire Application, (2)
for the page request (there are more you could define if you tried hard).
Pick a standard word, for example "static" and keep them under Application
and Request. Use a hash of the module name:

In Application.cfm:
If NOT IsDefined('Request.Static')
Request.Static = StructNew()

In module: MyTagName:
Request.Static["MyTagName"] = StructNew()
Request.MyTagName.ThisStaticVar = "some data";

This is now a static variable that will retain it's value for the duration
of this page request through all files and multiple calls to this tag. It is
only "private" within the tag because you make it so with the naming
convention. The same thing can be done under the Application scope (scopes
are structures).

Now the *REAL* problem with Cold Fusion is there is no ability to define a
macro, function, or subroutine to "hide" these details so these kinds of
things are very wordy which encourages mistakes when you have to specify
them a hundred times.

At 02:49 PM 8/28/00 -0400, Jamie Keane wrote:
My biggest complaint with the language is the lack of user-defined
functions.  I know that custom tags are sorta a work-around, but sometimes
a
function just needs to return a value, not just assign a value back to the
calling template.  Also, there's no way (that I know of at least) to pass
values by reference, or declare static variables within the scope of a
custom tag.  While PHP doesn't have the simplicity that CF has in terms of
database twiddling, and its error handling leaves a bit to be desired, it
does have support for user-defined functions that may contain variable
references and static variables, and that helps me out a lot.

--
Jamie Keane
Programmer
SolutionMasters, Inc.
9111 Monroe Rd., Suite 100
Charlotte, NC  28270
www.solutionmasters.com
704.563.5559 x 228  Voice
704.849.9291  Fax
-Original Message-
From: Gregory Harris [EMAIL PROTECTED]
To: [EMAIL PROTECTED] [EMAIL PROTECTED]
Date: Monday, August 28, 2000 2:30 PM
Subject: Re: What I want in CF (was: Learning ASP)


Ok, my wish list now:

1) How about a way to determine whether a dimension exists in an array,
for
instance this works:

ArrayLen(ThisArray)

But if ThisArray were a 2 dimensional array and I needed to figure out the
length of something in dimension 2, using this

ArrayLen(ThisArray[DimensionOne]) breaks the page

Rather than having to go thru the excess overhead of trying to use a
counter, maybe extending Arraylen could help this? Or how about a
ArrayDimensionExists() function?

2) Extending CFHTTP (I think this is a BIG one)

3) Making Structures Multi-Dimensional, or is it possible to do structures
like:

Stuff.Things.MoreThings = ThisVariable

This has never worked with me, the best I could do would be Stuff.Things

I'm sure there are more headaches I've run into, but these are right off
the
top of my head.  What else can everyone think of?

Gregory Harris
Los Angeles Information Technology Agency (ITA)
[EMAIL PROTECTED]


 [EMAIL PROTECTED] 08/28 11:11 AM 
 Dave Watts [mailto:[EMAIL PROTECTED]]
I agree that the interfaces for SMTP, POP, HTTP, etc. need a lot of work.
As
for other stuff, I'm kind of curious. What basic functionality would you
like to see? I can't really think of all that much that I'd like to see
added.


Personally, I've got a laundry list.  :)  However, off the top of my head,
in no particular order (I mentioned most of these at The Con last year,
and
will do so again if I go this year):

1. Extend the CFX API to make it more useful.  There a

RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Dave Watts

 Cold Fusion is weak in these areas, but really you can do 
 all these things (or "emulate" them :-) ) using existing 
 features. (forgive my syntax - I'm writing this quickly)
 
 Pick a standard variable name, like ReturnValue and only use 
 it for returning a value from a custom tag:
caller.ReturnValue = xxx
 
 Or use the tag's name as a structure:
 If NOT IsDefine("MyTagName") {
MyTagName = StructNew()
}
MyTagName.Return = "some data"

If I might suggest a better alternative, you can make the user of the custom
tag responsible for naming the return variable (which is the norm in most
languages) by creating an attribute of the custom tag for that name, and
using the SetVariable function within the custom tag to create that variable
dynamically:

!--- custom tag call ---
cf_foo return="foovar"
cfoutput#foovar#/cfoutput

...

!--- custom tag contents ---
cfparam name="Attributes.Return" default="Return"
cfset myvalue = "42"
cfset rs = SetVariable("Caller."  Attributes.Return, myvalue)

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
voice: (202) 797-5496
fax: (202) 797-5444
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Dave Watts

   Well  I can think of one REALLY good reason why ASP users might
   deal without nifty things like built in HTTP, etc. where CF users
   might insist on said functionality:
  
   Cost of ASP: $0.00
   Cost of ColdFusion: $1199.95 (From Necx.com)
 
  If you compare the labor costs for training and development for 
  entry-level and mid-level CF developers vs ASP developers, that 
  $1199, or the $3000+ that you'd pay for CF Enterprise Edition, 
  will pay for itself in less than a week, I suspect.

 I'd like to see some actual statistics backing up that claim. 
 I hear people use this argument all the time. "CF ultimately 
 costs less because it's so much easier to learn and faster to 
 develop applications with."  Well, this is definitely not true 
 all of the time, and given that there are so many people out 
 there who know VB (I think VB is still the most widely used
 programming language in the U.S.), it's not that difficult to 
 find an ASP programmer, or to train someone who already knows VB.

Unfortunately, of course, I don't have any "actual statistics". I'm sure
that's no surprise to you. What I do have is anecdotal experience, which you
might argue is useless. Nevertheless, I'm going to let fly with it.

1. The problem with developing web applications isn't really learning a new
language, but learning a new programming model. Traditional VB programming
and ASP programming using VBScript share a language, but not much else. It
can be difficult for even experienced programmers to learn and understand
the HTTP application model, where state management is a concern, where you
don't really have an "application" in the traditional sense, but rather you
have a bunch of individual scripts which are used in a coordinated fashion.
I've taught CF to hundreds of students, and often the ones who have the most
difficulty are the experienced programmers, as they have to forget about how
things work in the environment to which they're accustomed.

2. The demand for web development has inclined a lot of people without prior
development experience to get involved. These people have to learn a lot of
things at once - whether you use CF or ASP, you're going to have to learn
how relational databases work, how SQL works, how the HTTP request-response
model works, etcetera. If you can make any portion of that easier, it will
mean less overall learning is needed to get productive quickly.

3. All other things being equal ("ceteris parabis", as one of my teachers
was inclined to say), CFML is easier to learn than ASP, and has a lower
learning curve. It doesn't have to be much lower to cover the cost of the
product. If it's ten percent easier, let's say, and it takes a developer ten
percent less time to complete a project, and said developer is working a
forty-hour week, and you've got twenty developers working on a project who
are paid $100/hr, then over the course of a week your labor costs would be
$8000 (assuming I've done the math correctly - a shaky assumption indeed!).

Now, admittedly, as your ASP developers got more experience, their labor
costs would start to drop and approach those of the CF developers.

As you mentioned, you've got good developers and bad developers, but I'm
assuming that a good developer can do more with something that's easier to
use than with something that's harder to use.

I'd argue that the data access model alone might make that ten percent
difference.

4. Most of the complexities of CF development aren't really CF issues;
learning how to do more in SQL and JavaScript are two examples. To me, the
beauty of CF is that it's so simple that I can focus on other things outside
the world of CF. Now, I know CF and ASP. I personally write a decent amount
of ASP code, and have worked with ASP on and off since its release.
Nevertheless, I feel much more comfortable with CF; I find myself having to
look up specific objects, methods and properties in ASP quite a bit. There
are some things I prefer about ASP, but I find myself fighting the language
a lot less with CF.

 Now, that said, I do like CF better, but it's not because the 
 syntax is so much easier or that the performance is so much 
 better. It's because there is so much built in functionality, 
 and that functionality is very easy to use.

What makes that functionality easy to use?

 I am a huge supporter of CF, and I will continue to advocate 
 the use of CF over ASP for the time being, but when CF 5.0 
 releases, it better have a lot of fixes in it, or I'll have 
 to re-evaluate what language is my language of choice for 
 web development.

I'd second this wholeheartedly, and argue that this should always be
everyone's position. If a better tool comes along tomorrow, you'd be a fool
not to use it because of some misplaced product loyalty.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
voice: (202) 797-5496
fax: (202) 797-5444
--
Archives: 

RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Stewart McGowan

Dave,

I think the reverse can also be true, the difference between "web pages" and
"applications" can be quite considerable, a programmer coming from a more
traditional client/server background may have a more thorough grounding in
exceptions, error handling, transactions, locking, SQL etc. than a "web
developer"...

Stew


1. The problem with developing web applications isn't really learning a new
language, but learning a new programming model. Traditional VB programming
and ASP programming using VBScript share a language, but not much else. It
can be difficult for even experienced programmers to learn and understand
the HTTP application model, 
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Dave Watts

  1. The problem with developing web applications isn't really 
  learning a new language, but learning a new programming model. 
  Traditional VB programming and ASP programming using VBScript 
  share a language, but not much else. It can be difficult for 
  even experienced programmers to learn and understand the HTTP 
  application model ...
 
 I think the reverse can also be true, the difference between 
 "web pages" and "applications" can be quite considerable, a 
 programmer coming from a more traditional client/server background 
 may have a more thorough grounding in exceptions, error handling, 
 transactions, locking, SQL etc. than a "web developer"...

I'd agree that prior knowledge about all of those things is a very good
thing. It's not the only thing, though. To be a good web developer, you have
to know about programming in general, and you have to know about the HTTP
application programming model in particular. Many beginning web developers
don't know too much about programming in general, so they have to learn that
stuff, but they may have a better understanding of the model of HTTP
applications, and the strictures of that model.

In either case, the prior statement came from a "CF vs ASP" discussion, and
the purpose of the statement was to point out that learning the programming
language wasn't the biggest problem in learning web development, but rather
that learning the model was the big problem.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
voice: (202) 797-5496
fax: (202) 797-5444
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Zachary Bedell

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

 AH. Almost forgot. The ability to form post to a cf page and have
 cf determine the size of the file BEFORE the upload. ie, an
 optional byte cutoff limit for file upload.
 
 (I would wholeheartedly second this, gawd the nightmares I've 
 had w/ppl posting 20MB files to my personal CF Intranet, 
 almost filling my Disk Quota with my host...)

I'd like to extend on this one a little myself...

How about a way to configure whether the uploaded file is stored in
memory while it's being uploaded (as it is now), or in a temp disk
file (as is the case w/ PHP  most other normal languages...).  With
CF as it it, someone uploading a 20MB file to you not only blows your
disk quota, but it also blows your host's server RAM as that entire
20MB monster is sitting in memory.  It wouldn't surprise me if DoS
attacks are possible using that little "feature"...

Best regards,
Zac Bedell

-BEGIN PGP SIGNATURE-
Version: PGPfreeware 6.5.3 for non-commercial use http://www.pgp.com
Comment: Please use PGP!!!

iQA/AwUBOawCqgraVoMWBwRBEQKHmgCfc+7NZcj4siKyj6Oljd/o2EmXXVgAoOM5
W6r7fs6dWdCDq4HgzcMHpnAA
=F7ek
-END PGP SIGNATURE-
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Zachary Bedell

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Oh!  Forgot a few more pet peeves.  I'm sure I'll think of more as
this thread progresses.  Sorry for so many posts from one guy...

* An option to choose buffered page output (like CF does now) or
unbuffered (like ASP does).  That way you can choose to output a long
running page as you generate it instead of waiting for the entire
thing to load before the user sees anything.  (PHP has this)

* Session_OnStart, Session_OnEnd, Application_OnStart, and
Application_OnEnd type functions.  That way you could execute blocks
of code not only at the start  end of each page request, but also
specify blocks to run at the more abstract events of the application
or session starting or ending. (ASP does this)

* It's been said before, but I don't think it can be said enough:
USER DEFINED FUNCTIONS!!!  It is *such* a pain in the rump to be
stuck w/ a custom tag kludge when a *really* nice  elegant solution
could be done w/ a value returning function.  Not to mention
functional recursion would *have* to be faster than CF tag
recursion...

* A feature I'd like for CFStudio: Some sort of variable declaration
requirement and syntax / sanity checking for templates BEFORE they're
executed on the server.

Basically, I'm looking for something that would allow you to force
declaration of variables, types, maximum lengths, etc.  Then you can
specify (perhaps in specifically formatted comments) the requirements
for a variable  have the "compiler" make sure they're in range. 
This would completely eliminate any parameter not defined or syntax
type errors on your server (a good thing for the server) and would
make it possible to create a proper CFDoc system a la JavaDoc.  (I
know that's a quick description, but if anyone is interested I could
elaborate...)

* I'll also second (or third) the request for truly compiled
templates.

I'm sure I'll think of more...  I don't suppose there's any Allaire
programmers reading this list taking notes, are there? ;-)

Best regards,
Zac Bedell

-BEGIN PGP SIGNATURE-
Version: PGPfreeware 6.5.3 for non-commercial use http://www.pgp.com
Comment: Please use PGP!!!

iQA/AwUBOawIiQraVoMWBwRBEQLZlgCcDjuKZOMc4GjXxrVY58ifk9ZaukIAmQHZ
wQmtCCKUcYd3Xi+Sz9hLnJi9
=94CE
-END PGP SIGNATURE-
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Steve Bernard

How about ...

Robust R/X support. I want support for meta-characters, octal escapes, hex
escapes,
and class shorthands, ("\d" instead of "[::digital::]")

Encryption. Not those cheesy Encrypt/Decrypt functions, or just Hash().
I'd like to see 3DES, PGP, and a couple more hash/checksum options.

SNMP support. The ability to work with SNMP enabled network devices.

XML parser. Enough to check well-formedness with the option
to validate against a DTD. It doesn't have to "execute" the XML.

Steve


-Original Message-
From: Zachary Bedell [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, August 29, 2000 3:01 PM
To: '[EMAIL PROTECTED]'
Subject: RE: What I want in CF (was: Learning ASP)


-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Oh!  Forgot a few more pet peeves.  I'm sure I'll think of more as
this thread progresses.  Sorry for so many posts from one guy...

* An option to choose buffered page output (like CF does now) or
unbuffered (like ASP does).  That way you can choose to output a long
running page as you generate it instead of waiting for the entire
thing to load before the user sees anything.  (PHP has this)

* Session_OnStart, Session_OnEnd, Application_OnStart, and
Application_OnEnd type functions.  That way you could execute blocks
of code not only at the start  end of each page request, but also
specify blocks to run at the more abstract events of the application
or session starting or ending. (ASP does this)

* It's been said before, but I don't think it can be said enough:
USER DEFINED FUNCTIONS!!!  It is *such* a pain in the rump to be
stuck w/ a custom tag kludge when a *really* nice  elegant solution
could be done w/ a value returning function.  Not to mention
functional recursion would *have* to be faster than CF tag
recursion...

* A feature I'd like for CFStudio: Some sort of variable declaration
requirement and syntax / sanity checking for templates BEFORE they're
executed on the server.

Basically, I'm looking for something that would allow you to force
declaration of variables, types, maximum lengths, etc.  Then you can
specify (perhaps in specifically formatted comments) the requirements
for a variable  have the "compiler" make sure they're in range.
This would completely eliminate any parameter not defined or syntax
type errors on your server (a good thing for the server) and would
make it possible to create a proper CFDoc system a la JavaDoc.  (I
know that's a quick description, but if anyone is interested I could
elaborate...)

* I'll also second (or third) the request for truly compiled
templates.

I'm sure I'll think of more...  I don't suppose there's any Allaire
programmers reading this list taking notes, are there? ;-)

Best regards,
Zac Bedell

-BEGIN PGP SIGNATURE-
Version: PGPfreeware 6.5.3 for non-commercial use http://www.pgp.com
Comment: Please use PGP!!!

iQA/AwUBOawIiQraVoMWBwRBEQLZlgCcDjuKZOMc4GjXxrVY58ifk9ZaukIAmQHZ
wQmtCCKUcYd3Xi+Sz9hLnJi9
=94CE
-END PGP SIGNATURE-

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-29 Thread Steve Bernard

Ah yes, but ASP is "free", with upgrades. I'm sure you've looked at some
of the new features in ASP+

But, as you say, it may be that this community expects more, or rather, has
different expectations. ASP is a framework for using COM/DCOM objects
to get the "real" work done. Developers who work with VB and ASP a lot are
used to
accumulating a toolbox of objects that do what the developer needs or
reusing ones
that come with the OS/Apps/etc. CF originally came with a couple of these
"objects"
pre-installed. The community that grew around CF did so with a prior history
of
inclusion. Also, CF didn't have external object support until v.3.x. and
that
wasn't/isn't top notch. I am just starting to see wide-spread use of native
OS/App objects
with CF. I think that this is partly due to people's lack of knowledge and
awareness
of what's there and also because many of these objects are limited by
operational req's
(install Word on the server), and the limitations of CFOBJECT (no complex
data types).
WARNING: Exaggerated use of CFHTTP as an example follows - Debugging
CFOBJECT and/or
dealing with it's limitations shouldn't be a developer's first step in
finding a CFHTTP
replacement. Because of CFOBJECT's limitations this might be an issue. Also,
CF developer
shouldn't have to learn C++/Delphi and the CFX API, as easy as it is, just
to get reliable
HTTP support. This goes against your argument from earlier today in which
you argued that
one of CF's advantages over ASP is not having to deal with ASP's HTTP
functionality.
If I were to write a CFX tag or COM object to fix this particular problem
I'd need to know
a heck of a lot more about HTTP than ASP requires. In other words, if CF is
gonna shield
you from low level code/constructs it should do so reliably. If Allaire says
they're shipping
a product with x, y, and z functionality then I shouldn't feel the need to
find a plugin
replacement for 'y' because theirs doesn't do it right. If your example ASP
developer bought
a third-party COM object to get HTTP support and that object didn't work
right would you
expect him to keep using it without bitching all the time? :)

I should end by saying that I feel this applies only to what I see as core
functionalities like
HTTP, database access, RegEx, etc. and those emerging technologies which
will inherently benefit
the advancement of information systems and/or the global electronic economy.
Overly simple examples
of these two are XML (WDDX) and SSL (HTTPS), respectively. An authtication
module for RADIUS,
though, would fall under the realm of third-party purchase or internal
CFX/COM development.

Steve


-Original Message-
From: Dave Watts [mailto:[EMAIL PROTECTED]]
Sent: Monday, August 28, 2000 3:13 PM
To: '[EMAIL PROTECTED]'
Cc: '[EMAIL PROTECTED]'
Subject: RE: What I want in CF (was: Learning ASP)

 7. Fix CFHTTP!

I agree that it's not as good as it could (or should) be. I'd generally
recommend a third-party product for serious HTTP client needs.

This brings up an interesting point. As CF developers, we're used to getting
lots of functionality in the base CF product, without having to rely on
third-party addins. Is this what we should expect?

For example, I'd much rather have the CF developers fix other problems
within CF, such as memory management and stability issues, or the COM
interface, than fixing CFHTTP, CFMAIL, and the rest, because those I can
replace on my own. I can't do a whole lot about how CF manages memory,
though.

Maybe our expectations are a bit high, after all. I suspect you wouldn't
hear ASP developers complaining about the lack of HTTP client functionality
built into ASP; they expect to have to use third-party products to fill
functionality gaps. Why should CF developers be different in that regard?

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Gregory Harris

Ok, my wish list now:

1) How about a way to determine whether a dimension exists in an array, for instance 
this works:

ArrayLen(ThisArray)

But if ThisArray were a 2 dimensional array and I needed to figure out the length of 
something in dimension 2, using this

ArrayLen(ThisArray[DimensionOne]) breaks the page

Rather than having to go thru the excess overhead of trying to use a counter, maybe 
extending Arraylen could help this? Or how about a ArrayDimensionExists() function?

2) Extending CFHTTP (I think this is a BIG one)

3) Making Structures Multi-Dimensional, or is it possible to do structures like:

Stuff.Things.MoreThings = ThisVariable

This has never worked with me, the best I could do would be Stuff.Things

I'm sure there are more headaches I've run into, but these are right off the top of my 
head.  What else can everyone think of?

Gregory Harris
Los Angeles Information Technology Agency (ITA)
[EMAIL PROTECTED]


 [EMAIL PROTECTED] 08/28 11:11 AM 
 Dave Watts [mailto:[EMAIL PROTECTED]] 
I agree that the interfaces for SMTP, POP, HTTP, etc. need a lot of work. As
for other stuff, I'm kind of curious. What basic functionality would you
like to see? I can't really think of all that much that I'd like to see
added.


Personally, I've got a laundry list.  :)  However, off the top of my head,
in no particular order (I mentioned most of these at The Con last year, and
will do so again if I go this year):

1. Extend the CFX API to make it more useful.  There are some things (like
working with arrays, as Jeremy mentioned) that don't work or are hellishly
hard to workaround.  Some of us (very few, I know) *like* to work in C++ and
*like* to optimize our stuff by putting it in machine code.

2. Fix the encryption.  It's really *really* broken.

3. (or, in deference to or addition to #2) Support for "compiling"
templates.  We know that they already do this in memory (something akin to a
p-code or bytecode type thing), but what I'd like to see is the ability to
take that compiled chunk of memory and save it to a file.  Python has this,
as does Perl (in a limited sense).  This would do two things for me: (a) It
would mean that even though people could still "decompile" it, they'd still
have to figure out var names, etc.  (b) It would save the overhead of
parsing the file every time.

4. Better regular expression engine.  (Especially non-greedy matching.)

5. Better locking system.  (This is a whine.)  It's all fine and good to put
the burden of the locking on the programmer (who has to go absolutely crazy
on the CFLOCKs in a production system), but I'd really like to see something
a bit better.  I dunno how, but I know they have some pretty smart people
who can surprise us.

6. Binary data support for variables. (Unicode?)  Right now I can't
(reliably) mess around with binary files.  :(

7. Fix CFHTTP!  Please!  In the current implementation so much is broken
it's not even funny!
a. Not thread-safe (gah!)
b. Can't use CFHTTPPARAM (and therefore cookies) without the POST method.
(lame)
c. Can't select encoding type (multipart/form-data doesn't work
everywhere) - at least make it smart enough so that if no files are attached
it doesn't use multipart! (exceedingly lame)
d. The hack for port is *stupid*.  If I want to access an arbitrary URL that
could be on any port, I have to manually parse out the port number from the
URL and put it in the PORT attribute and at the same time take it out of the
URL string (it barfs otherwise!).  (mired in a sweaty mass of lameness)

8. Fix PreserveSingleQuotes() - Right now it doesn't act like a real
function.  I can't do other things in it.  That is,
PreserveSingleQuotes(ListChangeDelims(list,"','")) is broken.  (This is my
most common use for it.)

9. Fix the standard structures (Form, Client, etc) to actually work like
structures, so that I can enumerate them, delete from them, etc.  Having to
GetClientVariables() or get Form.FieldNames is just annoying (and doesn't
let my code be nice and transparent.)  Did they fix thix in 4.5?  I think
they are getting closer, but I think it is still broken?


Hmmm ... I'm trying to think of all the things I constantly have to hack
arround ...

. Passing arrays (even scalars) by reference instead of value.

. Accessing structure members in the order they were added, instead of
having to hack around it with a parallel list/array.  (However, I know how
hashes work, so this probably wouldn't be worth it.)

. ListSort(list[,type[,order]]) - Hacked around with arrays

. ListEliminateDuplicates(list) - Hacked around with structures (and arrays
if you need to preserve order)

. ListSlice(list,start,length)  ArraySlice(array,start,length) - or,
better yet, ListSlice(list,start,length,newlist), so that I can dynamically
replace the middle of a list (newlist doesn't have to be as long as length,
tho)

. QuerySetRow(query,"valuelist"[,row]) or QuerySetRow(query,array[,row])
(preferred)

. QueryDeleteRow(query,row)

. 

Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Jamie Keane

My biggest complaint with the language is the lack of user-defined
functions.  I know that custom tags are sorta a work-around, but sometimes a
function just needs to return a value, not just assign a value back to the
calling template.  Also, there's no way (that I know of at least) to pass
values by reference, or declare static variables within the scope of a
custom tag.  While PHP doesn't have the simplicity that CF has in terms of
database twiddling, and its error handling leaves a bit to be desired, it
does have support for user-defined functions that may contain variable
references and static variables, and that helps me out a lot.

--
Jamie Keane
Programmer
SolutionMasters, Inc.
9111 Monroe Rd., Suite 100
Charlotte, NC  28270
www.solutionmasters.com
704.563.5559 x 228  Voice
704.849.9291  Fax
-Original Message-
From: Gregory Harris [EMAIL PROTECTED]
To: [EMAIL PROTECTED] [EMAIL PROTECTED]
Date: Monday, August 28, 2000 2:30 PM
Subject: Re: What I want in CF (was: Learning ASP)


Ok, my wish list now:

1) How about a way to determine whether a dimension exists in an array, for
instance this works:

ArrayLen(ThisArray)

But if ThisArray were a 2 dimensional array and I needed to figure out the
length of something in dimension 2, using this

ArrayLen(ThisArray[DimensionOne]) breaks the page

Rather than having to go thru the excess overhead of trying to use a
counter, maybe extending Arraylen could help this? Or how about a
ArrayDimensionExists() function?

2) Extending CFHTTP (I think this is a BIG one)

3) Making Structures Multi-Dimensional, or is it possible to do structures
like:

Stuff.Things.MoreThings = ThisVariable

This has never worked with me, the best I could do would be Stuff.Things

I'm sure there are more headaches I've run into, but these are right off the
top of my head.  What else can everyone think of?

Gregory Harris
Los Angeles Information Technology Agency (ITA)
[EMAIL PROTECTED]


 [EMAIL PROTECTED] 08/28 11:11 AM 
 Dave Watts [mailto:[EMAIL PROTECTED]]
I agree that the interfaces for SMTP, POP, HTTP, etc. need a lot of work. As
for other stuff, I'm kind of curious. What basic functionality would you
like to see? I can't really think of all that much that I'd like to see
added.


Personally, I've got a laundry list.  :)  However, off the top of my head,
in no particular order (I mentioned most of these at The Con last year, and
will do so again if I go this year):

1. Extend the CFX API to make it more useful.  There are some things (like
working with arrays, as Jeremy mentioned) that don't work or are hellishly
hard to workaround.  Some of us (very few, I know) *like* to work in C++ and
*like* to optimize our stuff by putting it in machine code.

2. Fix the encryption.  It's really *really* broken.

3. (or, in deference to or addition to #2) Support for "compiling"
templates.  We know that they already do this in memory (something akin to a
p-code or bytecode type thing), but what I'd like to see is the ability to
take that compiled chunk of memory and save it to a file.  Python has this,
as does Perl (in a limited sense).  This would do two things for me: (a) It
would mean that even though people could still "decompile" it, they'd still
have to figure out var names, etc.  (b) It would save the overhead of
parsing the file every time.

4. Better regular expression engine.  (Especially non-greedy matching.)

5. Better locking system.  (This is a whine.)  It's all fine and good to put
the burden of the locking on the programmer (who has to go absolutely crazy
on the CFLOCKs in a production system), but I'd really like to see something
a bit better.  I dunno how, but I know they have some pretty smart people
who can surprise us.

6. Binary data support for variables. (Unicode?)  Right now I can't
(reliably) mess around with binary files.  :(

7. Fix CFHTTP!  Please!  In the current implementation so much is broken
it's not even funny!
a. Not thread-safe (gah!)
b. Can't use CFHTTPPARAM (and therefore cookies) without the POST method.
(lame)
c. Can't select encoding type (multipart/form-data doesn't work
everywhere) - at least make it smart enough so that if no files are attached
it doesn't use multipart! (exceedingly lame)
d. The hack for port is *stupid*.  If I want to access an arbitrary URL that
could be on any port, I have to manually parse out the port number from the
URL and put it in the PORT attribute and at the same time take it out of the
URL string (it barfs otherwise!).  (mired in a sweaty mass of lameness)

8. Fix PreserveSingleQuotes() - Right now it doesn't act like a real
function.  I can't do other things in it.  That is,
PreserveSingleQuotes(ListChangeDelims(list,"','")) is broken.  (This is my
most common use for it.)

9. Fix the standard structures (Form, Client, etc) to actually work like
structures, so that I can enumerate them, delete from them, etc.  Having to
GetClientVariables() or get Form.FieldNames is just ann

Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Peter Theobald

I've got structures doing all kinds of crazy things. Stuff.Things.MoreThings 
definitely works for me. TO make the expressions easier you may want to use temporary 
variables in the middle:
ThingStruct = StructNew();
ThingStruct = Stuff.Things;
... do something with ThingStruct.MoreThings...

At 11:22 AM 8/28/00 -0700, Gregory Harris wrote:
Ok, my wish list now:

1) How about a way to determine whether a dimension exists in an array, for instance 
this works:

ArrayLen(ThisArray)

But if ThisArray were a 2 dimensional array and I needed to figure out the length of 
something in dimension 2, using this

ArrayLen(ThisArray[DimensionOne]) breaks the page

Rather than having to go thru the excess overhead of trying to use a counter, maybe 
extending Arraylen could help this? Or how about a ArrayDimensionExists() function?

2) Extending CFHTTP (I think this is a BIG one)

3) Making Structures Multi-Dimensional, or is it possible to do structures like:

Stuff.Things.MoreThings = ThisVariable

This has never worked with me, the best I could do would be Stuff.Things

I'm sure there are more headaches I've run into, but these are right off the top of 
my head.  What else can everyone think of?

Gregory Harris
Los Angeles Information Technology Agency (ITA)
[EMAIL PROTECTED]


 [EMAIL PROTECTED] 08/28 11:11 AM 
 Dave Watts [mailto:[EMAIL PROTECTED]] 
I agree that the interfaces for SMTP, POP, HTTP, etc. need a lot of work. As
for other stuff, I'm kind of curious. What basic functionality would you
like to see? I can't really think of all that much that I'd like to see
added.


Personally, I've got a laundry list.  :)  However, off the top of my head,
in no particular order (I mentioned most of these at The Con last year, and
will do so again if I go this year):

1. Extend the CFX API to make it more useful.  There are some things (like
working with arrays, as Jeremy mentioned) that don't work or are hellishly
hard to workaround.  Some of us (very few, I know) *like* to work in C++ and
*like* to optimize our stuff by putting it in machine code.

2. Fix the encryption.  It's really *really* broken.

3. (or, in deference to or addition to #2) Support for "compiling"
templates.  We know that they already do this in memory (something akin to a
p-code or bytecode type thing), but what I'd like to see is the ability to
take that compiled chunk of memory and save it to a file.  Python has this,
as does Perl (in a limited sense).  This would do two things for me: (a) It
would mean that even though people could still "decompile" it, they'd still
have to figure out var names, etc.  (b) It would save the overhead of
parsing the file every time.

4. Better regular expression engine.  (Especially non-greedy matching.)

5. Better locking system.  (This is a whine.)  It's all fine and good to put
the burden of the locking on the programmer (who has to go absolutely crazy
on the CFLOCKs in a production system), but I'd really like to see something
a bit better.  I dunno how, but I know they have some pretty smart people
who can surprise us.

6. Binary data support for variables. (Unicode?)  Right now I can't
(reliably) mess around with binary files.  :(

7. Fix CFHTTP!  Please!  In the current implementation so much is broken
it's not even funny!
a. Not thread-safe (gah!)
b. Can't use CFHTTPPARAM (and therefore cookies) without the POST method.
(lame)
c. Can't select encoding type (multipart/form-data doesn't work
everywhere) - at least make it smart enough so that if no files are attached
it doesn't use multipart! (exceedingly lame)
d. The hack for port is *stupid*.  If I want to access an arbitrary URL that
could be on any port, I have to manually parse out the port number from the
URL and put it in the PORT attribute and at the same time take it out of the
URL string (it barfs otherwise!).  (mired in a sweaty mass of lameness)

8. Fix PreserveSingleQuotes() - Right now it doesn't act like a real
function.  I can't do other things in it.  That is,
PreserveSingleQuotes(ListChangeDelims(list,"','")) is broken.  (This is my
most common use for it.)

9. Fix the standard structures (Form, Client, etc) to actually work like
structures, so that I can enumerate them, delete from them, etc.  Having to
GetClientVariables() or get Form.FieldNames is just annoying (and doesn't
let my code be nice and transparent.)  Did they fix thix in 4.5?  I think
they are getting closer, but I think it is still broken?


Hmmm ... I'm trying to think of all the things I constantly have to hack
arround ...

. Passing arrays (even scalars) by reference instead of value.

. Accessing structure members in the order they were added, instead of
having to hack around it with a parallel list/array.  (However, I know how
hashes work, so this probably wouldn't be worth it.)

. ListSort(list[,type[,order]]) - Hacked around with arrays

. ListEliminateDuplicates(list) - Hacked around with structures (and arrays
if you need to preserve order)


RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Zachary Bedell

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

 7. Fix CFHTTP!  Please!  In the current implementation so 
 much is broken it's not even funny!

Not that a few other folks haven't mentioned this, but.

ME TOO!!!

To add some more specific requests:  

* 4.5.1 broke templates which retrieved MIME types other than
"text/html" (and a few others).  CFHTTP should NOT assume that just
because something isn't in its list of text types that it isn't
indeed text.  This issue might very well be fixed as part of
implementing binary stuff support, but it DOES need to be fixed.  At
the very least, let me configure what MIME types are text myself!

* I'd like to have full control of both the headers SENT and RECEIVED
in the CFHTTP request.  

* Some intelligent parsing of multipart/MIME encoded responses would
be REALLY nice.  I had to write my own CFHTTP hack as a CFX tag to
access UPS's online shipping  other functions, but most of that work
could easily (and sensibly) be included in CFHTTP.

* I definitely want to see the entirety of CF's functionality be
accessible from CFSCRIPT blocks.  They're SO much nicer to write for
us procedural language types (at least for certain applications), and
rumor has it they're faster to parse.


Just my $.02...

Best regards,
Zac Bedell

-BEGIN PGP SIGNATURE-
Version: PGPfreeware 6.5.3 for non-commercial use http://www.pgp.com
Comment: Please use PGP!!!

iQA/AwUBOaq1QwraVoMWBwRBEQIEbQCg6BM+2iyHpW2MNixZrtxJCEFXt10AoLjk
QyZNV/sinLxbPUhCl9X4TIwr
=0lT/
-END PGP SIGNATURE-
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Dave Watts

 3. (or, in deference to or addition to #2) Support for 
 "compiling" templates.  We know that they already do this 
 in memory (something akin to a p-code or bytecode type 
 thing), but what I'd like to see is the ability to take 
 that compiled chunk of memory and save it to a file.  
 Python has this, as does Perl (in a limited sense). This 
 would do two things for me: (a) It would mean that even 
 though people could still "decompile" it, they'd still
 have to figure out var names, etc. (b) It would save the 
 overhead of parsing the file every time.

A couple of points:

Moving to Java as the underlying platform should allow this; after all
that's how servlets and JSP work. As far as saving the overhead of parsing,
the existing memory storage scheme does that now.

 5. Better locking system.

I agree, as far as memory variables are concerned. I think the way the whole
CFLOCK issue has unfolded is really unfortunate and unpleasant. I'd like to
see that go away.

 6. Binary data support for variables. (Unicode?)  Right now I can't
 (reliably) mess around with binary files.  :(

Have you played with the binary functions under CF 4.5.x? You can do a
little with them, although not as much as I'd like.

 7. Fix CFHTTP!

I agree that it's not as good as it could (or should) be. I'd generally
recommend a third-party product for serious HTTP client needs.

This brings up an interesting point. As CF developers, we're used to getting
lots of functionality in the base CF product, without having to rely on
third-party addins. Is this what we should expect?

For example, I'd much rather have the CF developers fix other problems
within CF, such as memory management and stability issues, or the COM
interface, than fixing CFHTTP, CFMAIL, and the rest, because those I can
replace on my own. I can't do a whole lot about how CF manages memory,
though.

Maybe our expectations are a bit high, after all. I suspect you wouldn't
hear ASP developers complaining about the lack of HTTP client functionality
built into ASP; they expect to have to use third-party products to fill
functionality gaps. Why should CF developers be different in that regard?

 9. Fix the standard structures (Form, Client, etc) to 
 actually work like structures, so that I can enumerate 
 them, delete from them, etc. Having to GetClientVariables() 
 or get Form.FieldNames is just annoying (and doesn't let 
 my code be nice and transparent.) Did they fix this in 
 4.5? I think they are getting closer, but I think it is 
 still broken?

For the most part, this works the way you'd want it to in 4.5.x. Most scopes
are exposed as structures, so you don't have to use Form.Fieldnames, for
example. Client variables are not exposed as structures - I suspect there's
too much overhead in doing that.

 . Passing arrays (even scalars) by reference instead of value.

I agree that arrays should be passed by reference. I actually thought they
were passed by reference, but they're not. I don't know that I'd want scalar
variables passed by reference instead of value; after all, CFML isn't
object-oriented, and we can differentiate between complex data objects
(arrays, structures, queries, etc) and simple variables.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
voice: (202) 797-5496
fax: (202) 797-5444
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Billy Cravens

1.  CFIMAP (native to language, not as a custom tag)
2.  ability to communicate with any TCP/IP host, and get results, and
maintain an open session (like Intrafoundation's custom tag)
3.  ability to call tags from within cfscript
4.  some kind of UDF support.. if for no other reason to quiet the
critics who say that CFML isn't a real language without it :)

Of course, I get that Santa Claus/the Allaire Corporation will be nice
to us once a full spec is done on Pharaoh.

-- 
Billy Cravens
[EMAIL PROTECTED]





Rick Osborne wrote:
 
  Dave Watts [mailto:[EMAIL PROTECTED]]
 I agree that the interfaces for SMTP, POP, HTTP, etc. need a lot of work. As
 for other stuff, I'm kind of curious. What basic functionality would you
 like to see? I can't really think of all that much that I'd like to see
 added.
 
 
 Personally, I've got a laundry list.  :)  However, off the top of my head,
 in no particular order (I mentioned most of these at The Con last year, and
 will do so again if I go this year):
 
 1. Extend the CFX API to make it more useful.  There are some things (like
 working with arrays, as Jeremy mentioned) that don't work or are hellishly
 hard to workaround.  Some of us (very few, I know) *like* to work in C++ and
 *like* to optimize our stuff by putting it in machine code.
 
 2. Fix the encryption.  It's really *really* broken.
 
 3. (or, in deference to or addition to #2) Support for "compiling"
 templates.  We know that they already do this in memory (something akin to a
 p-code or bytecode type thing), but what I'd like to see is the ability to
 take that compiled chunk of memory and save it to a file.  Python has this,
 as does Perl (in a limited sense).  This would do two things for me: (a) It
 would mean that even though people could still "decompile" it, they'd still
 have to figure out var names, etc.  (b) It would save the overhead of
 parsing the file every time.
 
 4. Better regular expression engine.  (Especially non-greedy matching.)
 
 5. Better locking system.  (This is a whine.)  It's all fine and good to put
 the burden of the locking on the programmer (who has to go absolutely crazy
 on the CFLOCKs in a production system), but I'd really like to see something
 a bit better.  I dunno how, but I know they have some pretty smart people
 who can surprise us.
 
 6. Binary data support for variables. (Unicode?)  Right now I can't
 (reliably) mess around with binary files.  :(
 
 7. Fix CFHTTP!  Please!  In the current implementation so much is broken
 it's not even funny!
 a. Not thread-safe (gah!)
 b. Can't use CFHTTPPARAM (and therefore cookies) without the POST method.
 (lame)
 c. Can't select encoding type (multipart/form-data doesn't work
 everywhere) - at least make it smart enough so that if no files are attached
 it doesn't use multipart! (exceedingly lame)
 d. The hack for port is *stupid*.  If I want to access an arbitrary URL that
 could be on any port, I have to manually parse out the port number from the
 URL and put it in the PORT attribute and at the same time take it out of the
 URL string (it barfs otherwise!).  (mired in a sweaty mass of lameness)
 
 8. Fix PreserveSingleQuotes() - Right now it doesn't act like a real
 function.  I can't do other things in it.  That is,
 PreserveSingleQuotes(ListChangeDelims(list,"','")) is broken.  (This is my
 most common use for it.)
 
 9. Fix the standard structures (Form, Client, etc) to actually work like
 structures, so that I can enumerate them, delete from them, etc.  Having to
 GetClientVariables() or get Form.FieldNames is just annoying (and doesn't
 let my code be nice and transparent.)  Did they fix thix in 4.5?  I think
 they are getting closer, but I think it is still broken?
 
 Hmmm ... I'm trying to think of all the things I constantly have to hack
 arround ...
 
 . Passing arrays (even scalars) by reference instead of value.
 
 . Accessing structure members in the order they were added, instead of
 having to hack around it with a parallel list/array.  (However, I know how
 hashes work, so this probably wouldn't be worth it.)
 
 . ListSort(list[,type[,order]]) - Hacked around with arrays
 
 . ListEliminateDuplicates(list) - Hacked around with structures (and arrays
 if you need to preserve order)
 
 . ListSlice(list,start,length)  ArraySlice(array,start,length) - or,
 better yet, ListSlice(list,start,length,newlist), so that I can dynamically
 replace the middle of a list (newlist doesn't have to be as long as length,
 tho)
 
 . QuerySetRow(query,"valuelist"[,row]) or QuerySetRow(query,array[,row])
 (preferred)
 
 . QueryDeleteRow(query,row)
 
 . QuerySort(query,column[,type[,order]])
 
 . StructMerge(struct1,struct2) - Iterates over struct2 assigning its keys to
 struct1 (overwriting if necessary)
 
 I think that's it for now ... like I said, that's just off the top of my
 head.  Anyone else?
 
 -Rick
 
 --
 Archives: 

RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Richard Kuryk

This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

--_=_NextPart_001_01C0112A.D27A4160
Content-Type: text/plain;
charset="iso-8859-1"

I had to write my own CFHTTP because I wanted to do a post and CF wouldn't
let me set the content-type.  I was trying to post XML and if the content
type wasn't text/xml the site wouldn't post back the return xml set.  I
would imagine this would become a more common problem with people starting
to use xml.  I wrote a java class which I call from cold fusion to
accomplish this.

Rich

-Original Message-
From: Zachary Bedell [mailto:[EMAIL PROTECTED]]
Sent: Monday, August 28, 2000 2:54 PM
To: '[EMAIL PROTECTED]'
Subject: RE: What I want in CF (was: Learning ASP)


-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

 7. Fix CFHTTP!  Please!  In the current implementation so 
 much is broken it's not even funny!

Not that a few other folks haven't mentioned this, but.

ME TOO!!!

To add some more specific requests:  

* 4.5.1 broke templates which retrieved MIME types other than
"text/html" (and a few others).  CFHTTP should NOT assume that just
because something isn't in its list of text types that it isn't
indeed text.  This issue might very well be fixed as part of
implementing binary stuff support, but it DOES need to be fixed.  At
the very least, let me configure what MIME types are text myself!

* I'd like to have full control of both the headers SENT and RECEIVED
in the CFHTTP request.  

* Some intelligent parsing of multipart/MIME encoded responses would
be REALLY nice.  I had to write my own CFHTTP hack as a CFX tag to
access UPS's online shipping  other functions, but most of that work
could easily (and sensibly) be included in CFHTTP.

* I definitely want to see the entirety of CF's functionality be
accessible from CFSCRIPT blocks.  They're SO much nicer to write for
us procedural language types (at least for certain applications), and
rumor has it they're faster to parse.


Just my $.02...

Best regards,
Zac Bedell

-BEGIN PGP SIGNATURE-
Version: PGPfreeware 6.5.3 for non-commercial use http://www.pgp.com
Comment: Please use PGP!!!

iQA/AwUBOaq1QwraVoMWBwRBEQIEbQCg6BM+2iyHpW2MNixZrtxJCEFXt10AoLjk
QyZNV/sinLxbPUhCl9X4TIwr
=0lT/
-END PGP SIGNATURE-

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.

--_=_NextPart_001_01C0112A.D27A4160
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"
HTML
HEAD
META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1"
META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
5.5.2448.0"
TITLERE: What I want in CF (was: Learning ASP)/TITLE
/HEAD
BODY

PFONT SIZE=3D2I had to write my own CFHTTP because I wanted to do a =
post and CF wouldn't let me set the content-type.nbsp; I was trying to =
post XML and if the content type wasn't text/xml the site wouldn't post =
back the return xml set.nbsp; I would imagine this would become a more =
common problem with people starting to use xml.nbsp; I wrote a java =
class which I call from cold fusion to accomplish this./FONT/P

PFONT SIZE=3D2Rich/FONT
/P

PFONT SIZE=3D2-Original Message-/FONT
BRFONT SIZE=3D2From: Zachary Bedell [A =
HREF=3D"mailto:[EMAIL PROTECTED]"mailto:[EMAIL PROTECTED]/A]=
/FONT
BRFONT SIZE=3D2Sent: Monday, August 28, 2000 2:54 PM/FONT
BRFONT SIZE=3D2To: '[EMAIL PROTECTED]'/FONT
BRFONT SIZE=3D2Subject: RE: What I want in CF (was: Learning =
ASP)/FONT
/P
BR

PFONT SIZE=3D2-BEGIN PGP SIGNED MESSAGE-/FONT
BRFONT SIZE=3D2Hash: SHA1/FONT
/P

PFONT SIZE=3D2gt; 7. Fix CFHTTP!nbsp; Please!nbsp; In the =
current implementation so /FONT
BRFONT SIZE=3D2gt; much is broken it's not even funny!/FONT
/P

PFONT SIZE=3D2Not that a few other folks haven't mentioned this, =
but./FONT
/P

PFONT SIZE=3D2ME TOO!!!/FONT
/P

PFONT SIZE=3D2To add some more specific requests:nbsp; /FONT
/P

PFONT SIZE=3D2* 4.5.1 broke templates which retrieved MIME types =
other than/FONT
BRFONT SIZE=3D2quot;text/htmlquot; (and a few others).nbsp; =
CFHTTP should NOT assume that just/FONT
BRFONT SIZE=3D2because something isn't in its list of text types =
that it isn't/FONT
BRFONT SIZE=3D2indeed text.nbsp; This issue might very well be =
fixed as part of/FONT
BRFONT SIZE=3D2implementing binary stuff support, but it DOES need =
to be fixed.nbsp; At/FONT
BRFONT SIZE=3D2the very least, let me configure what MIME types are =
text myself!/FONT
/P

PFONT SIZE=3D2* I'd like to have full control of both the headers =

RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Zachary Bedell

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

 This brings up an interesting point. As CF developers, 
 we're used to getting lots of functionality in the base CF 
 product, without having to rely on third-party addins. 
 Is this what we should expect?
 
 For example, I'd much rather have the CF developers fix 
 other problems within CF, such as memory management and 
 stability issues, or the COM interface, than fixing CFHTTP, 
 CFMAIL, and the rest, because those I can replace on my own. 
 I can't do a whole lot about how CF manages memory, though.
 
 Maybe our expectations are a bit high, after all. I suspect 
 you wouldn't hear ASP developers complaining about the lack 
 of HTTP client functionality built into ASP; 

(Yeah...  You'll hear me complain about it alright.  I deal, but I'll
still complain, goddarnit)

 they expect to have to use third-party products to fill
 functionality gaps. Why should CF developers be different 
 in that regard?

Well  I can think of one REALLY good reason why ASP users might
deal without nifty things like built in HTTP, etc. where CF users
might insist on said functionality:

Cost of ASP: $0.00
Cost of ColdFusion: $1199.95 (From Necx.com)

Granted you need a WinNT Server license for ASP, but I end up needing
that for CF too, so that doesn't count...  And at 854.99, a 5-user
copy of Win2k Server is STILL cheaper than ColdFusion Pro.

Certainly, things like memory usage, stability, etc. should be fixed
be as a priority.  I just think that things like CFHTTP or CFMAIL
that just barely work should either be fixed or removed.  There's
ABSOLUTELY NO EXCUSE for releasing a $1200 product that has as many
bugs and requires as many kludged work around as CF 4.5.1 does.  If
Allaire doesn't want to take the time to do CFHTTP, etc. right, then
remove them from the product.  Then they need to stop advertising
that the product "includes" those things when the majority of users
can't use them  need to buy third party replacements anyways.

Am I completely alone here?  Or do others share my (slightly
exasperated) options of Allaire's programming practices?

Best regards,
Zac


-BEGIN PGP SIGNATURE-
Version: PGPfreeware 6.5.3 for non-commercial use http://www.pgp.com
Comment: Please use PGP!!!

iQA/AwUBOarY7QraVoMWBwRBEQLM5gCdGIGAAM6nVUNEf0viBL4UegDx3BEAoIq1
mMgDnOKX9XD3FbDO2IqGoDL0
=RT1h
-END PGP SIGNATURE-
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Peter Theobald

Cold Fusion is weak in these areas, but really you can do all these things (or 
"emulate" them :-) ) using existing features.
(forgive my syntax - I'm writing this quickly)

Pick a standard variable name, like ReturnValue and only use it for returning a value 
from a custom tag:
caller.ReturnValue = xxx

Or use the tag's name as a structure:
If NOT IsDefine("MyTagName") {
MyTagName = StructNew()
}
MyTagName.Return = "some data"


Static variables: How static do you want them? :-) Cold Fusion has extra "scopes" that 
wouldn't make sense in a standard programming language like C++ where the application 
all runs at once. In Cold Fusion you might want static variables that retain their 
value (1) for the entire Application, (2) for the page request (there are more you 
could define if you tried hard).
Pick a standard word, for example "static" and keep them under Application and 
Request. Use a hash of the module name:

In Application.cfm:
If NOT IsDefined('Request.Static')
Request.Static = StructNew()

In module: MyTagName:
Request.Static["MyTagName"] = StructNew()
Request.MyTagName.ThisStaticVar = "some data";

This is now a static variable that will retain it's value for the duration of this 
page request through all files and multiple calls to this tag. It is only "private" 
within the tag because you make it so with the naming convention. The same thing can 
be done under the Application scope (scopes are structures).

Now the *REAL* problem with Cold Fusion is there is no ability to define a macro, 
function, or subroutine to "hide" these details so these kinds of things are very 
wordy which encourages mistakes when you have to specify them a hundred times.

At 02:49 PM 8/28/00 -0400, Jamie Keane wrote:
My biggest complaint with the language is the lack of user-defined
functions.  I know that custom tags are sorta a work-around, but sometimes a
function just needs to return a value, not just assign a value back to the
calling template.  Also, there's no way (that I know of at least) to pass
values by reference, or declare static variables within the scope of a
custom tag.  While PHP doesn't have the simplicity that CF has in terms of
database twiddling, and its error handling leaves a bit to be desired, it
does have support for user-defined functions that may contain variable
references and static variables, and that helps me out a lot.

--
Jamie Keane
Programmer
SolutionMasters, Inc.
9111 Monroe Rd., Suite 100
Charlotte, NC  28270
www.solutionmasters.com
704.563.5559 x 228  Voice
704.849.9291  Fax
-Original Message-
From: Gregory Harris [EMAIL PROTECTED]
To: [EMAIL PROTECTED] [EMAIL PROTECTED]
Date: Monday, August 28, 2000 2:30 PM
Subject: Re: What I want in CF (was: Learning ASP)


Ok, my wish list now:

1) How about a way to determine whether a dimension exists in an array, for
instance this works:

ArrayLen(ThisArray)

But if ThisArray were a 2 dimensional array and I needed to figure out the
length of something in dimension 2, using this

ArrayLen(ThisArray[DimensionOne]) breaks the page

Rather than having to go thru the excess overhead of trying to use a
counter, maybe extending Arraylen could help this? Or how about a
ArrayDimensionExists() function?

2) Extending CFHTTP (I think this is a BIG one)

3) Making Structures Multi-Dimensional, or is it possible to do structures
like:

Stuff.Things.MoreThings = ThisVariable

This has never worked with me, the best I could do would be Stuff.Things

I'm sure there are more headaches I've run into, but these are right off the
top of my head.  What else can everyone think of?

Gregory Harris
Los Angeles Information Technology Agency (ITA)
[EMAIL PROTECTED]


 [EMAIL PROTECTED] 08/28 11:11 AM 
 Dave Watts [mailto:[EMAIL PROTECTED]]
I agree that the interfaces for SMTP, POP, HTTP, etc. need a lot of work. As
for other stuff, I'm kind of curious. What basic functionality would you
like to see? I can't really think of all that much that I'd like to see
added.


Personally, I've got a laundry list.  :)  However, off the top of my head,
in no particular order (I mentioned most of these at The Con last year, and
will do so again if I go this year):

1. Extend the CFX API to make it more useful.  There are some things (like
working with arrays, as Jeremy mentioned) that don't work or are hellishly
hard to workaround.  Some of us (very few, I know) *like* to work in C++ and
*like* to optimize our stuff by putting it in machine code.

2. Fix the encryption.  It's really *really* broken.

3. (or, in deference to or addition to #2) Support for "compiling"
templates.  We know that they already do this in memory (something akin to a
p-code or bytecode type thing), but what I'd like to see is the ability to
take that compiled chunk of memory and save it to a file.

RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Dave Watts

 Well  I can think of one REALLY good reason why ASP users might
 deal without nifty things like built in HTTP, etc. where CF users
 might insist on said functionality:
 
 Cost of ASP: $0.00
 Cost of ColdFusion: $1199.95 (From Necx.com)

If you compare the labor costs for training and development for entry-level
and mid-level CF developers vs ASP developers, that $1199, or the $3000+
that you'd pay for CF Enterprise Edition, will pay for itself in less than a
week, I suspect.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
voice: (202) 797-5496
fax: (202) 797-5444
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Don Vawter

How about i++   operators etc in cfscript

I can't tell you the number of times I have had to fix that.

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Jeremy Allen

Increment and Decrement operators would be nice... :)

How about some "real" looping capabilites consider.

How about starting arrays at 0 like every other langauge

for(i = 0; yadda ; Gap == 2 ? something : somethingElse)

This list could go on and on and on.. but passing array
values by reference and a few other little things would
make a whole new world of programming capable with just
a few suble changes to the way CF works.

UDF's coupled with values by reference would mean a HUGE
change in what you can do in CF :)

Jeremy Allen
[EMAIL PROTECTED]
[Insert Quarter]

-Original Message-
From: Don Vawter [mailto:[EMAIL PROTECTED]]
Sent: Monday, August 28, 2000 6:17 PM
To: [EMAIL PROTECTED]
Subject: Re: What I want in CF (was: Learning ASP)


How about i++   operators etc in cfscript

I can't tell you the number of times I have had to fix that.


--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Byron Stuart

I'd like to see some actual statistics backing up that claim.  I hear people
use this argument all the time.  "CF ultimately costs less because it's so
much easier to learn and faster to develop applications with."  Well, this
is definitely not true all of the time, and given that there are so many
people out there who know VB (I think VB is still the most widely used
programming language in the U.S.), it's not that difficult to find an ASP
programmer, or to train someone who already knows VB.

I've worked with people that had 2+ years of CF programming experience, but
couldn't write good code to save their life.  I've also worked with CF
programmers who had only been coding for four months, and were teaching me
new things.  It really depends on aptitude.  Some people are good
programmers and some aren't.  If someone is going to learn CF in a week, I
think it would also take them a week to learn ASP.  I'm guessing that there
will be very minimal differences in training costs.

Now, that said, I do like CF better, but it's not because the syntax is so
much easier or that the performance is so much better.  It's because there
is so much built in functionality, and that functionality is very easy to
use.  If, however, this added functionality doesn't work, why am I paying
$1200 for it?  Not to mention that this ends up costing even more.  Like,
now instead of having to hire programmers for one language (CF), I need more
programmers to write C++/VB for all the custom COM objects and CFX tags that
had to be written to basically duplicate the functionality that CF was
already supposed to have.  Why wouldn't it be easier to just hire a VB
programmer who could be trained to write ASP?  Then you have a developer who
can write COM objects in VB and write ASP, with very little additional
training cost.  This argument gets even more compelling when you are already
developing on the Windows platform.

I am a huge supporter of CF, and I will continue to advocate the use of CF
over ASP for the time being, but when CF 5.0 releases, it better have a lot
of fixes in it, or I'll have to re-evaluate what language is my language of
choice for web development.

Byron

-Original Message-
From: Dave Watts [mailto:[EMAIL PROTECTED]]
Sent: Monday, August 28, 2000 2:52 PM
To: '[EMAIL PROTECTED]'
Cc: '[EMAIL PROTECTED]'
Subject: RE: What I want in CF (was: Learning ASP)


 Well  I can think of one REALLY good reason why ASP users might
 deal without nifty things like built in HTTP, etc. where CF users
 might insist on said functionality:
 
 Cost of ASP: $0.00
 Cost of ColdFusion: $1199.95 (From Necx.com)

If you compare the labor costs for training and development for entry-level
and mid-level CF developers vs ASP developers, that $1199, or the $3000+
that you'd pay for CF Enterprise Edition, will pay for itself in less than a
week, I suspect.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
voice: (202) 797-5496
fax: (202) 797-5444

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Gregory Harris

Ok, in parentheses below are my responses to some of the improvements.

How about some "real" looping capabilites consider.

How about starting arrays at 0 like every other langauge

for(i = 0; yadda ; Gap == 2 ? something : somethingElse)


(A norm is a norm, by now it's normal for Array's in CF to start with 1, I've got it 
pretty well set in my head that CF Array's start at 1, everyone else starts at 0, I 
really wouldn't appreciate changing that line of thinking).

AH. Almost forgot. The ability to form post to a cf page and have cf
determine the size of the file BEFORE the upload. ie, an optional byte
cutoff limit for file upload.

(I would wholeheartedly second this, gawd the nightmares I've had w/ppl posting 20MB 
files to my personal CF Intranet, almost filling my Disk Quota with my host...)


Jeremy Allen
[EMAIL PROTECTED] 
[Insert Quarter]

-Original Message-
From: Don Vawter [mailto:[EMAIL PROTECTED]] 
Sent: Monday, August 28, 2000 6:17 PM
To: [EMAIL PROTECTED] 
Subject: Re: What I want in CF (was: Learning ASP)


How about i++   operators etc in cfscript

I can't tell you the number of times I have had to fix that.


--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ 
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/ 
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.

Gregory Harris
Los Angeles Information Technology Agency (ITA)
[EMAIL PROTECTED]


--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebarRstsbodyRsts/cf_talk or send a message 
to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Joseph Eugene

 I personally think CF has its own Advantages and Disadvantages compared to
Asp.

 Asp with JScript has a  stronger type language and real feel of oop
programming
 more than of scripting. VbScript okay...language feels like talking yuk!

 Inspite of more coding for database connectivity and such, ADO has its own
advantages
 of server side cursors and data manipulation at the server level.\
Well, having said all these with microsofts .Net and C sharp,  i guess will
 be whole new story Allaire better come up with something more "Sturdy"

Best Regards
Joe




- Original Message -
From: "Zachary Bedell" [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Monday, August 28, 2000 5:26 PM
Subject: RE: What I want in CF (was: Learning ASP)


 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

  This brings up an interesting point. As CF developers,
  we're used to getting lots of functionality in the base CF
  product, without having to rely on third-party addins.
  Is this what we should expect?
 
  For example, I'd much rather have the CF developers fix
  other problems within CF, such as memory management and
  stability issues, or the COM interface, than fixing CFHTTP,
  CFMAIL, and the rest, because those I can replace on my own.
  I can't do a whole lot about how CF manages memory, though.
 
  Maybe our expectations are a bit high, after all. I suspect
  you wouldn't hear ASP developers complaining about the lack
  of HTTP client functionality built into ASP;

 (Yeah...  You'll hear me complain about it alright.  I deal, but I'll
 still complain, goddarnit)

  they expect to have to use third-party products to fill
  functionality gaps. Why should CF developers be different
  in that regard?

 Well  I can think of one REALLY good reason why ASP users might
 deal without nifty things like built in HTTP, etc. where CF users
 might insist on said functionality:

 Cost of ASP: $0.00
 Cost of ColdFusion: $1199.95 (From Necx.com)

 Granted you need a WinNT Server license for ASP, but I end up needing
 that for CF too, so that doesn't count...  And at 854.99, a 5-user
 copy of Win2k Server is STILL cheaper than ColdFusion Pro.

 Certainly, things like memory usage, stability, etc. should be fixed
 be as a priority.  I just think that things like CFHTTP or CFMAIL
 that just barely work should either be fixed or removed.  There's
 ABSOLUTELY NO EXCUSE for releasing a $1200 product that has as many
 bugs and requires as many kludged work around as CF 4.5.1 does.  If
 Allaire doesn't want to take the time to do CFHTTP, etc. right, then
 remove them from the product.  Then they need to stop advertising
 that the product "includes" those things when the majority of users
 can't use them  need to buy third party replacements anyways.

 Am I completely alone here?  Or do others share my (slightly
 exasperated) options of Allaire's programming practices?

 Best regards,
 Zac


 -BEGIN PGP SIGNATURE-
 Version: PGPfreeware 6.5.3 for non-commercial use http://www.pgp.com
 Comment: Please use PGP!!!

 iQA/AwUBOarY7QraVoMWBwRBEQLM5gCdGIGAAM6nVUNEf0viBL4UegDx3BEAoIq1
 mMgDnOKX9XD3FbDO2IqGoDL0
 =RT1h
 -END PGP SIGNATURE-
 --

 Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
 To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or
send a message to [EMAIL PROTECTED] with 'unsubscribe' in
the body.


--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



RE: What I want in CF (was: Learning ASP)

2000-08-28 Thread Dave Watts

 Really?  Not in my neck of the woods  Most of the folks we
 interview have a procedural programming background, and most have
 used VB in the past.  Having them pickup VBScript for ASP is a
 cakewalk compared to them figuring out the whole "shove your code
 into the middle of perfectly good HTML" thing...  
 
 We hire programmers, not monkies, so formal training is *very* seldom
 necessary.  Our guys can learn new tricks fairly quickly...

I'd guess that you're the exception, not the rule, based on my experience as
an instructor. As far as preferring the ASP model versus the CF model for
code, that's more of a personal preference than anything else - in either
case, you're mixing HTML with server-side programming. The alternative, to
me, is even worse, in which you have to output each line of HTML
specifically within the body of your code, like you'd do in a Java servlet,
for example.

Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
voice: (202) 797-5496
fax: (202) 797-5444
--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.



Re: What I want in CF (was: Learning ASP)

2000-08-28 Thread Jared Clinton

Delphi page producers are a pretty good alternative (plus ISAPI apps are quite speedy).
I'm not savvy with the Enhydra architecture, although it offers a different 
alternative again. (I've heard its good)

Jared.

Dave Watts wrote:

  Really?  Not in my neck of the woods  Most of the folks we
  interview have a procedural programming background, and most have
  used VB in the past.  Having them pickup VBScript for ASP is a
  cakewalk compared to them figuring out the whole "shove your code
  into the middle of perfectly good HTML" thing...
 
  We hire programmers, not monkies, so formal training is *very* seldom
  necessary.  Our guys can learn new tricks fairly quickly...

 I'd guess that you're the exception, not the rule, based on my experience as
 an instructor. As far as preferring the ASP model versus the CF model for
 code, that's more of a personal preference than anything else - in either
 case, you're mixing HTML with server-side programming. The alternative, to
 me, is even worse, in which you have to output each line of HTML
 specifically within the body of your code, like you'd do in a Java servlet,
 for example.

 Dave Watts, CTO, Fig Leaf Software
 http://www.figleaf.com/
 voice: (202) 797-5496
 fax: (202) 797-5444
 --
 Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
 To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.

--
Archives: http://www.mail-archive.com/cf-talk@houseoffusion.com/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=listsbody=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.