Board index » delphi » Re: Delphi vs Web/Scripting Languages
m. Th.
![]() Delphi Developer |
Re: Delphi vs Web/Scripting Languages2008-05-30 02:30:06 PM delphi263 Craig Stuntz [TeamB] writes: Quotem. Th. writes: -- m. th. |
m. Th.
![]() Delphi Developer |
Re: Delphi vs Web/Scripting Languages2008-05-30 02:30:06 PM delphi263 Craig Stuntz [TeamB] writes: Quotem. Th. writes: -- m. th. |
m. Th.
![]() Delphi Developer |
2008-05-30 03:12:55 PM
Re: Delphi vs Web/Scripting Languages
Brian Moelk writes:
Quotem. Th. writes: QuoteThe bottom line here is that good practice cannot realistically be which gives you - greater speed - ie. a native code compiler - better usage of resources (memory, CPU) - ie. no Garbage collectors, no VM to occupy memory etc. - more easier deployment - single exe compared with a bunch of files (the 'runtime') and source code which must be obfuscated in order to protect your IP? Imho, your position is in favor of a compiler. And if this compiler is made x-platform thing which is certainly doable, and it was done by several projects already (I don't mean now Delphi necessarily) then where is the advantage of the family of languages which you support? ...but my intent isn't to win a language war, is to enhance my tool in which it happens to do our programs, knowing very well that this tool cannot be 'the best of everything for everyone' (btw, Delphi tried that in the past, as you know - with well known results). Also, I am afraid to 'win a language war' because there are 'some people' which can easy say "What I would told you? Our Delphi is the best one. Let's leave it as a cash cow in a splendid isolation self contemplating it's eternal glory in the light of the leader of the open ALM revolution." Not that this can happen, but just to be sure... I just try to see what are the goods and the bads of this tool from a critical POV in order to leverage the work which is done by other communities. And, yes, imho, a tool, as a result of a thinking process of a team (which is a small community inside in a company/foundation etc.), can influence the 'outside' community. And, also, the other informational stream must exist: The community feedback must influence the tool. that is why I do all these posts. In fact, the most daunting thing in all this thread (and the 'crux' of it - to cite you) for me was Robert's statement when I have asked him to vote on certain QC entries: <quote> Why would I want that? Do you really believe they would add anything of this into Delphi? </quote> Why a logical developer, as he seems to be, to have reasons to post such a statement? Because we all know that he have reasons to post it... Concretely, what/which features do you find useful in Ruby (with which it seems that you have a certain experience) which, based on your experience as a programmer, can be 'imported/adapted/implemented (etc.)' in Delphi? -- m. th. |
m. Th.
![]() Delphi Developer |
2008-05-30 03:59:44 PM
Re: Delphi vs Web/Scripting Languages
Robert Giesecke writes:
QuoteJames K Smith writes: m. th. |
Robert Giesecke
![]() Delphi Developer |
2008-05-30 05:24:11 PM
Re: Delphi vs Web/Scripting Languages
m. Th. writes:
QuoteRobert Giesecke writes: create a variable. |
Robert Giesecke
![]() Delphi Developer |
2008-05-30 09:24:56 PM
Re: Delphi vs Web/Scripting Languages
Keith Latham writes:
QuoteRobert Giesecke writes: Quote> Quote
Quote
Not in the religious kind of way. I am happy that is has no "goto", isn't needed anymore by the plethora of smart jump statements. (method, if, for, while, case, ...) Quote> Quote> QuoteYou are just causing more work for the compiler and putting more strain on var xyz := GetSomeValue(); end; Quote>using xyz := GetSomeValue() do Have you ever had a try-finally-free block? This is exactly the same thing, just without the need to declare the var for the whole method or state its type. And w/o the rather noisy syntax of try-finally-free. The type gets inferred from the assignment. (no problem, if you actually want to specify the type) Quote
tediousness and noise. |
Brian Moelk
![]() Delphi Developer |
2008-05-30 09:45:34 PM
Re: Delphi vs Web/Scripting Languages
m. Th. writes:
Quote....and let's say that 'tools and languages' doesn't matter in achieving include time to market. [...] Quote....but my intent isn't to win a language war, is to enhance my tool in community repeat the requests? :) QuoteConcretely, what/which features do you find useful in Ruby (with which application, IMO, that doesn't mean that one is more suited to large scale projects than the other. -- Brian Moelk Brain Endeavor LLC XXXX@XXXXX.COM |
Craig Stuntz [TeamB]
![]() Delphi Developer |
2008-05-30 09:49:07 PM
Re: Delphi vs Web/Scripting Languages
m. Th. writes:
QuoteBut my point was/is 'what can we borrow, if we can borrow something'. advantages of static typing. 2. First class frameworks for certain problem domains. Easier said than implemented. 3. The ability to use dynamicism in the cases where there really aren't any alternatives and it helps a lot (compare Ruby's ActiveRecord with Delphi's TDataSet with regards to accessing individual field values). Plus there are things that are done well by non-dynamic languages, but which are apropos to this discussion: 1. Optimizations of virtual function performance. The fact that we can use static functions has perhaps kept us from questioning why virtual function performance must be worse than static function performance in all cases. In time-critical situations (e.g., inside a loop), there are optimizations which can bring virtual function performance close to static function performance. Java already does this, in the academic work on the technique is decades old. 2. Garbage collection or some other method of automated memory management. There are a lot of reasons for this. I have discussed some of them on my blog. But insofar as this discussion is concerned, the killer feature here is reduced typing and maintainability of code. 3. First-class functions, lambda expressions, code and types as objects, etc. -- Craig Stuntz [TeamB] ?Vertex Systems Corp. ?Columbus, OH Delphi/InterBase Weblog : blogs.teamb.com/craigstuntz IB 6 versions prior to 6.0.1.6 are pre-release and may corrupt your DBs! Open Edition users, get 6.0.1.6 from mers.com |
Craig Stuntz [TeamB]
![]() Delphi Developer |
2008-05-30 09:53:56 PM
Re: Delphi vs Web/Scripting Languages
Keith Latham writes:
Quote>My code is way less verbose (in the sense of noisy) and I can read inference a type, you have *all* of the advantages of static type checking. -- Craig Stuntz [TeamB] ?Vertex Systems Corp. ?Columbus, OH Delphi/InterBase Weblog : blogs.teamb.com/craigstuntz Everything You Need to Know About InterBase Character Sets: blogs.teamb.com/craigstuntz/articles/403.aspx |
Xavier
![]() Delphi Developer |
2008-05-30 11:24:45 PM
Re: Delphi vs Web/Scripting Languages
Craig Stuntz [TeamB] writes:
QuoteNow, that is entirely wrong. Type inferencing *is* static typing. compiler <g>). infer, inferring, inference, inferred, inferable(/inferible/inferrible), inferably, inferrer, infers, aneurysm. |
m. Th.
![]() Delphi Developer |
2008-05-31 01:44:54 AM
Re: Delphi vs Web/Scripting Languages
Craig Stuntz [TeamB] writes:
Quotem. Th. writes: ones to have type inference! <g>), in the case of functions how do you see the syntax? Or we should rely only on var parameters like let's say ReadLn(var a, var b, ...) Also, if I will open a QC on this, would you vote for it? Quote2. First class frameworks for certain problem domains. Easier said - database access/data binding - containers, data structures. Quote3. The ability to use dynamicism in the cases where there really something similar, but faster and feature richer, since they have 'everything' (compiler, language specification, IDE, VCL etc.). Only a little bit of determination perhaps is required... Btw, I see this in accessing fields (as you noted) like in eg. MyDataSet.Field1.AsString and in other database actions Eg. locating - MyDataSet.Field1.Locate('MyVal') - this would improve a lot the maintainability and as a 2dary effect, speed imho. (QC #56798 - vote for it! :-) ) Also, the main locate method can be overloaded in MyDataSet.Locate(aFields: Array of Fields; aValues... ) - with the same benefits in code quality. (QC #56797 - vote also here!) QuotePlus there are things that are done well by non-dynamic languages, Quote2. Garbage collection or some other method of automated memory your truly (did I mention to vote for it?), I have a cold feeling about the 2ndary effects which a GC can induce. In that report I tried to find a way in which such an engine can be configurable in order to not 'harm'. What do you think? Quote3. First-class functions, lambda expressions, ... Quotecode and types as objects, etc. posibility of metaprogramming / runtime evaluation / runtime compiler'? And, oh, btw did I mention to vote for it? :-) HTH, PS: I am reading a little bit about comprehension lists & tuples in Python. Can you 'prepare' a little bit on Haskell? I will try (if I'll have time) to 'attack' you there after we'll advance with this... :-) -- m. th. |
Craig Stuntz [TeamB]
![]() Delphi Developer |
2008-05-31 03:09:02 AM
Re: Delphi vs Web/Scripting Languages
m. Th. writes:
QuoteCan you 'prepare' a little bit on Haskell? Craig Stuntz [TeamB] ?Vertex Systems Corp. ?Columbus, OH Delphi/InterBase Weblog : blogs.teamb.com/craigstuntz Useful articles about InterBase development: blogs.teamb.com/craigstuntz/category/21.aspx |
Yogi Yang 007
![]() Delphi Developer |
2008-05-31 02:22:47 PM
Re: Delphi vs Web/Scripting Languages
Keith Latham writes:
Quote
|
m. Th.
![]() Delphi Developer |
2008-05-31 04:32:16 PM
Re: Delphi vs Web/Scripting Languages
Robert Giesecke writes:
Quote> m. th. |
Keith Latham
![]() Delphi Developer |
2008-06-03 06:59:14 AM
Re: Delphi vs Web/Scripting Languages
"Yogi Yang 007" <XXXX@XXXXX.COM>writes
QuoteKeith Latham writes: |