Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-11 Thread wxjmfauth
 
 
 * Some languages are just fundamentally bad. 

The flexible string representation is a perfect exemple.

Again, a short explanation:

This FSR splits unicode in chunks. Two immediate consequences:
- It's necessary to keep track of each individual internal pieces of text.
- It's necessary to waste time in switching between the internal coding
schemes.

Bad memory and bad performance at the same time.


In fact, with such a mechanism, it is even impossible to write an editor.

jmf



I do not recommend ever
 
 writing production code in Whitespace, Ook, or Piet.
 
 
 
 * Some languages force you to do a lot of bookkeeping, memory
 
 management, etc. These are inferior unless their corresponding
 
 advantages (usually performance or memory use) justify it.
 
 
 
 * Some situations specifically demand one language. If you're writing
 
 code to be deployed on cheap web servers, it's probably going to have
 
 to be in PHP. If it's to run inside a web browser, it pretty much has
 
 to be JavaScript, ActionScript, or maybe something that compiles to
 
 one of those.
 
 
 
 But that would still leave you with a good few choices. When it comes
 
 down to it, how do you choose between Ruby, Python, Perl, Pike,
 
 JavaScript, insert language of choice here, etcetera? I can think of
 
 a few considerations that may or may not be important... and I'm sure
 
 you can add more.
 
 
 
 - Library support. For web work, it might be useful to be able to
 
 create a PNG image on the fly (live graphs and such), or to have a
 
 simple one-liner that handles cookies and persistence.
 
 
 
 - Familiarity with the language. Why learn another one when you
 
 already know this one?
 
 
 
 - *Un*familiarity with the language. If you're going to have to learn,
 
 may as well charge your boss for it!
 
 
 
 - Proper Unicode support. For manipulating text, helps to be able to
 
 work with it as text.
 
 
 
 - Lack of proper Unicode support. Maybe it's easier to just work with
 
 bytes everywhere? :)
 
 
 
 - Ease/atomicity of deployment of new versions (maybe even while it's running)
 
 
 
 - Buzzwordiness? If your boss asks you to choose a language and you
 
 can say either Ruby on Rails or CherryPy, are you more likely to
 
 get approval for the former?
 
 
 
 Something to throw open there. Citations from actual choices made a bonus. :)
 
 
 
 ChrisA

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-11 Thread Chris Angelico
On Mon, Nov 11, 2013 at 8:28 PM,  wxjmfa...@gmail.com wrote:
 * Some languages are just fundamentally bad.

 The flexible string representation is a perfect exemple.

Wow. A new low for you, jmf... comparing PEP 393 to Ook?!?

 In fact, with such a mechanism, it is even impossible to write an editor.

And somehow a performance tradeoff makes Python no longer Turing complete.

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-11 Thread Mark Lawrence

On 11/11/2013 09:28, wxjmfa...@gmail.com wrote:


* Some languages are just fundamentally bad.


The flexible string representation is a perfect exemple.

Again, a short explanation:

This FSR splits unicode in chunks. Two immediate consequences:
- It's necessary to keep track of each individual internal pieces of text.
- It's necessary to waste time in switching between the internal coding
schemes.

Bad memory and bad performance at the same time.


In fact, with such a mechanism, it is even impossible to write an editor.

jmf



For the benefit of newbies, lurkers or whatever please ignore the 
rubbish written by Joseph McCarthy Faust regarding PEP 393 and the 
Flexible String Representation.  He keeps making these false claims in 
double spaced google crap despite having been shot down in this thread
https://groups.google.com/forum/#!topic/comp.lang.python/JkVQT0Wbq1A[1-25-false], 
where he was asked to provide evidence to support his claims.  he didn't 
do so then, he's been asked repeatedly since to do so but hasn't because 
he can't, hence his newly aquired nickname.


--
Python is the second best programming language in the world.
But the best has yet to be invented.  Christian Tismer

Mark Lawrence

--
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-11 Thread Ethan Furman

On 11/11/2013 01:28 AM, wxjmfa...@gmail.com wrote:



* Some languages are just fundamentally bad.


The flexible string representation is a perfect exemple.


Argh!  He escaped!  *chase* *scuffle* *stuff* *stuff* *stuff*

Whew.  Safely back in the troll bin.

Okay, back to my day.

--
~Ethan~
--
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-11 Thread 88888 Dihedral
On Sunday, November 10, 2013 4:56:38 PM UTC+8, Jorgen Grahn wrote:
 On Sun, 2013-11-10, Chris Angelico wrote:
 
  On Sun, Nov 10, 2013 at 11:41 AM, Roy Smith r...@panix.com wrote:
 
  On 09/11/2013 22:58, Chris Angelico wrote:
 
  
 
   * Some languages are just fundamentally bad. I do not recommend ever
 
   writing production code in Whitespace, Ook, or Piet.
 
 
 
  One of the worst coding experiences I ever had was trying to build an
 
  app for a Roku media player.  They have a home-grown language called
 
  BrightScript.  Barf.
 
 
 
  And this is exactly why I was so strongly against the notion of
 
  developing an in-house scripting language. It may be a lot of work to
 
  evaluate Lua, Python, JavaScript, and whatever others we wanted to
 
  try, but it's a *lot* less work than making a new language that
 
  actually is worth using.
 
 
 
 Yes.  I am baffled that people insist on doing the latter. Designing a
 
 limited /data/ language is often a good idea; designing something
 
 which eventually will need to become Turing-complete is not.

Python is designed with the VM 
interpreter to execute compiled 
byte codes.

Of course, C/C++/JAVA are lower 
level languages not designed in 
this way.

To remedy the efficient part, 
cython and C-extensions are available
in Python. 


-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-10 Thread Jorgen Grahn
On Sun, 2013-11-10, Chris Angelico wrote:
 On Sun, Nov 10, 2013 at 11:41 AM, Roy Smith r...@panix.com wrote:
 On 09/11/2013 22:58, Chris Angelico wrote:
 
  * Some languages are just fundamentally bad. I do not recommend ever
  writing production code in Whitespace, Ook, or Piet.

 One of the worst coding experiences I ever had was trying to build an
 app for a Roku media player.  They have a home-grown language called
 BrightScript.  Barf.

 And this is exactly why I was so strongly against the notion of
 developing an in-house scripting language. It may be a lot of work to
 evaluate Lua, Python, JavaScript, and whatever others we wanted to
 try, but it's a *lot* less work than making a new language that
 actually is worth using.

Yes.  I am baffled that people insist on doing the latter. Designing a
limited /data/ language is often a good idea; designing something
which eventually will need to become Turing-complete is not.

/Jorgen

-- 
  // Jorgen Grahn grahn@  Oo  o.   . .
\X/ snipabacken.se   O  o   .
-- 
https://mail.python.org/mailman/listinfo/python-list


Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-09 Thread Chris Angelico
On Sun, Nov 10, 2013 at 8:21 AM, Mark Janssen dreamingforw...@gmail.com wrote:
 I'd be interested to hear your thoughts on where the field of computer 
 languages is heading, and how that affects the choice of languages for 
 building web sites.

 Well, there aren't that many groupings towards which languages
 specialize for (not including embedded or other application-specific
 domains).  There's OS scripting, Web scripting, and then the otherwise
 general-purpose normative languages in the middle of those two
 extremes.  But this view presumes a model of computation which hasn't
 settled into wide agreement.

So, on what basis _would_ you choose a language for some purpose?
Without speaking specifically of web development here, how do you
choose a language?

* Some languages are just fundamentally bad. I do not recommend ever
writing production code in Whitespace, Ook, or Piet.

* Some languages force you to do a lot of bookkeeping, memory
management, etc. These are inferior unless their corresponding
advantages (usually performance or memory use) justify it.

* Some situations specifically demand one language. If you're writing
code to be deployed on cheap web servers, it's probably going to have
to be in PHP. If it's to run inside a web browser, it pretty much has
to be JavaScript, ActionScript, or maybe something that compiles to
one of those.

But that would still leave you with a good few choices. When it comes
down to it, how do you choose between Ruby, Python, Perl, Pike,
JavaScript, insert language of choice here, etcetera? I can think of
a few considerations that may or may not be important... and I'm sure
you can add more.

- Library support. For web work, it might be useful to be able to
create a PNG image on the fly (live graphs and such), or to have a
simple one-liner that handles cookies and persistence.

- Familiarity with the language. Why learn another one when you
already know this one?

- *Un*familiarity with the language. If you're going to have to learn,
may as well charge your boss for it!

- Proper Unicode support. For manipulating text, helps to be able to
work with it as text.

- Lack of proper Unicode support. Maybe it's easier to just work with
bytes everywhere? :)

- Ease/atomicity of deployment of new versions (maybe even while it's running)

- Buzzwordiness? If your boss asks you to choose a language and you
can say either Ruby on Rails or CherryPy, are you more likely to
get approval for the former?

Something to throw open there. Citations from actual choices made a bonus. :)

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-09 Thread Mark Lawrence

On 09/11/2013 22:58, Chris Angelico wrote:


* Some languages are just fundamentally bad. I do not recommend ever
writing production code in Whitespace, Ook, or Piet.



In my last job I was forced into using Apple(42 not so obvious ways to 
do it)Script.  Yuck.


--
Python is the second best programming language in the world.
But the best has yet to be invented.  Christian Tismer

Mark Lawrence

--
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-09 Thread Roy Smith
On 09/11/2013 22:58, Chris Angelico wrote:
 
  * Some languages are just fundamentally bad. I do not recommend ever
  writing production code in Whitespace, Ook, or Piet.

One of the worst coding experiences I ever had was trying to build an 
app for a Roku media player.  They have a home-grown language called 
BrightScript.  Barf.
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-09 Thread Chris Angelico
On Sun, Nov 10, 2013 at 11:41 AM, Roy Smith r...@panix.com wrote:
 On 09/11/2013 22:58, Chris Angelico wrote:
 
  * Some languages are just fundamentally bad. I do not recommend ever
  writing production code in Whitespace, Ook, or Piet.

 One of the worst coding experiences I ever had was trying to build an
 app for a Roku media player.  They have a home-grown language called
 BrightScript.  Barf.

And this is exactly why I was so strongly against the notion of
developing an in-house scripting language. It may be a lot of work to
evaluate Lua, Python, JavaScript, and whatever others we wanted to
try, but it's a *lot* less work than making a new language that
actually is worth using.

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-09 Thread Mark Lawrence

On 09/11/2013 23:24, Mark Lawrence wrote:

On 09/11/2013 22:58, Chris Angelico wrote:


* Some languages are just fundamentally bad. I do not recommend ever
writing production code in Whitespace, Ook, or Piet.



In my last job I was forced into using Apple(42 not so obvious ways to
do it)Script.  Yuck.



I'd forgotten I'd used Monk back around 1999/2000.  I couldn't remember 
much about it so just looked it up here 
http://docs.oracle.com/cd/E18867_01/SRE/Monk_Reference_SRE.pdf, not sure 
if it's double or triple yuck.


Still, when you've been spoiled by Python for 10 years I guess anything 
else looks bad by definition :)


--
Python is the second best programming language in the world.
But the best has yet to be invented.  Christian Tismer

Mark Lawrence

--
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-09 Thread Chris Angelico
On Sun, Nov 10, 2013 at 12:05 PM, Mark Lawrence breamore...@yahoo.co.uk wrote:
 I'd forgotten I'd used Monk back around 1999/2000.  I couldn't remember much
 about it so just looked it up here
 http://docs.oracle.com/cd/E18867_01/SRE/Monk_Reference_SRE.pdf, not sure if
 it's double or triple yuck.

From the contents page in that PDF:

Chapter 1
- Introduction 16
- Document Purpose and Scope 16
- Intended Audience 16
- Organization of Information 17
- Writing Conventions 18
- For information on how to use a specific add-on product (for example, an e*Way
Intelligent Adapter), see the user’s guide for that product. 19
- SeeBeyond Web Site 20

Page 19. Lolwut?

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Languages for different purposes (was Re: New user's initial thoughts / criticisms of Python)

2013-11-09 Thread Mark Janssen
On Sat, Nov 9, 2013 at 2:58 PM, Chris Angelico ros...@gmail.com wrote:
 So, on what basis _would_ you choose a language for some purpose?
 Without speaking specifically of web development here, how do you
 choose a language?

Most generally, you choose a language informed by the language
designer's intentions of the language, usually stated explicitly.  Of
course, if you're in a constrained environment, then that is going to
dictate your decision.   After that, you're left with your own level
of expertise regarding language design (which for many is not much)
and the breadth of the field to examine (usually larger than most are
familiar).  This is an arena where PhD's are made.

Obviously, languages just designed to [brain]f*ck with you, despite
being theoretically complete, aren't much of a candidate for
evaluation.

 But that would still leave you with a good few choices. When it comes
 down to it, how do you choose between Ruby, Python, Perl, Pike,
 JavaScript, insert language of choice here, etcetera? I can think of
 a few considerations that may or may not be important... and I'm sure
 you can add more.

Among general purpose languages that pretty much offer the same
benefits, the community often informs the decision.

-- 
MarkJ
Tacoma, Washington
-- 
https://mail.python.org/mailman/listinfo/python-list