473,466 Members | 1,397 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

merits of Lisp vs Python

How do you compare Python to Lisp? What specific advantages do you
think that one has over the other?

Note I'm not a Python person and I have no axes to grind here. This is
just a question for my general education.

Mark

Dec 8 '06
852 27926
"Anders J. Munch" <20**@jmunch.dkwrites:
jayessay wrote:
Please note: GC is not part of CL's definition. It is likely not part
of any Lisp's definition (for reasons that should be obvious), and for
the same reasons likely not part of any language's definition.

Really?
Really.

So how do you write a portable program in CL, that is to run
for unbounded lengths of time?
Make it non-consing (like for any such program in any language). Of
course, this won't guarantee success as the implementation or OS or
.... may leak or other wise cons memory even if your program doesn't.
I'm surprised there are people out there that find this interesting
let alone surprising.
/Jon

--
'j' - a n t h o n y at romeo/charley/november com
Dec 20 '06 #801


JS******@gmail.com wrote:
Come on; you guys can't just leave this at 999 posts!
Funny you should whine, i was just getting ready to sign off with:

I noticed while singing the praises of auto-indentation that there was a
shortcoming in The Greatest Feature Known to Editing source code, which
is the ability to copy an arbitrary block of code (say, a case statement
in the else branch of an if statement in a loop) with a single
control-click of the mouse, viz, that I still had to reindent if it was
a multiline statement. The first line of course landed exactly where I
clicked so that was fine, but other lines in the block were retaining
the indentation extant at the time of the click.

A few glasses of...<cougha few hours ago I dashed off an RFE to Franz
tech support apologizing for a trivial matter but wondering if it might
not be just a line or two, and lawdy-it-must-be-xmas a glass later back
came a patch I am just wallowing in.

interestingly, the techie happens not to have been a user of
control-click, probably a hardcore keyboard guy who never touches the
mouse. I started programming GUIs on a Mac 512, didn't /have/ a keyboard.***

And now the punch line: spare me the "oh gosh reindentation is so easy"
dodge. So is a manual control-shift-p to auto-reindent after an ungainly
paste, but this is definitely one of those deals where we don't notice
until we stop hitting ourselves with that hammer.

ken

--
Algebra: http://www.tilton-technology.com/LispNycAlgebra1.htm

BLISS programs Just Work.
Never revisited, they
Never get refined.
- Warnock's Explanation of Large Programs
Dec 21 '06 #802
Rob Thorpe wrote:
Anders J. Munch wrote:
>Let u(t) be the actual memory used by the program at time t.
Let r(t) be the size of reachable memory at time t.

Require that u(t) is a member of O(t -max{t'<=t: r(t')})

There. That wasn't so hard, was it?

That's quite a clever definition actually.
But, let's say I have a lisp machine. It has an unusual architecture,
it's made entirely of SRAM cells of ~9bits. Sometimes these cells are
used as storage, sometimes their contents represent logic circuits and
the routing between them is configured to form them into a processor.
Please tell me what reachable memory is ;). (The above processor is
not science fiction, it could easily be done with FPGAs)
Reachable memory is the set of interpreter objects (conses, closures, scopes,
atoms and what have you) reachable from from some appropriately defined root
set. It can be unambiguously defined with respect to a virtual machine, with no
regard to how actual implementations represent these things.

For actual memory use, a simple byte count would do fine. If code and data are
intermingled, just use the combined size of both of them.

If you're worried about comparing incompatible units, don't be: apples and
oranges compare just fine under big-Oh.

- Anders
Dec 21 '06 #803
Anders J. Munch wrote:
Rob Thorpe wrote:
Anders J. Munch wrote:
Let u(t) be the actual memory used by the program at time t.
Let r(t) be the size of reachable memory at time t.

Require that u(t) is a member of O(t -max{t'<=t: r(t')})

There. That wasn't so hard, was it?
That's quite a clever definition actually.
But, let's say I have a lisp machine. It has an unusual architecture,
it's made entirely of SRAM cells of ~9bits. Sometimes these cells are
used as storage, sometimes their contents represent logic circuits and
the routing between them is configured to form them into a processor.
Please tell me what reachable memory is ;). (The above processor is
not science fiction, it could easily be done with FPGAs)

Reachable memory is the set of interpreter objects (conses, closures, scopes,
atoms and what have you) reachable from from some appropriately defined root
set. It can be unambiguously defined with respect to a virtual machine, with no
regard to how actual implementations represent these things.
Yes.
For actual memory use, a simple byte count would do fine. If code and data are
intermingled, just use the combined size of both of them.
Well, in my example the code, the data and the processor are
intermingled. Still you could do it this way. But, what would happen
for example if on a normal machine someone wrote a program that
generated lots of functions that it never used, would it have to be
detected by the GC. This is hard to do. The solution is probably to
define the root set only in terms of data.
If you're worried about comparing incompatible units, don't be: apples and
oranges compare just fine under big-Oh.
Yes. Thank you for comprehensively out-arguing me.

I'll give one last reason why it may not be a good thing to define:
reference counting. Some people want to use refcounts, and believe
that under certain circumstances they provide better performance than
GC. I don't know if they're right, I suspect they are for some limited
circumstances. A normal ref-count system can't be gauranteed to have
no memory holes introduced by loops in the data. But, if the
programmer causes no loops to come into being then he/she is safe. An
implementation that used refcounting might not be of much general use,
but for specific purposes, embedded programming for example, it might
be useful.

Dec 21 '06 #804
On Fri, 08 Dec 2006 03:07:09 -0800, Mark Tarver wrote:
How do you compare Python to Lisp? What specific advantages do you
think that one has over the other?

Note I'm not a Python person and I have no axes to grind here. This is
just a question for my general education.

Mark
Kill this frakkin thread; Lisp rules -- while Python is boring (but better
than many other alternatives). E.O.F.

--
Lars Rune Nøstdal
http://nostdal.org/

Dec 22 '06 #805

Lars Rune Nøstdal wrote:
On Fri, 08 Dec 2006 03:07:09 -0800, Mark Tarver wrote:
How do you compare Python to Lisp? What specific advantages do you
think that one has over the other?

Note I'm not a Python person and I have no axes to grind here. This is
just a question for my general education.

Mark

Kill this frakkin thread; Lisp rules -- while Python is boring (but better
than many other alternatives). E.O.F.
Perhaps only with the addendum that although 'Lisp roolz', no-one uses
for anything of relevance anymore and it is continuing it's geriatric
decline into obscurity. ;-)

Python is dull, except to the ever increasing group of programmers who
use it for practical purposes.

Hmm... a fitting. EOF.

Fuzzyman
http://www.voidspace.org.uk/python/articles.shtml
--
Lars Rune Nøstdal
http://nostdal.org/
Dec 23 '06 #806
All of you are nazis!

Dec 23 '06 #807

defcon8 wrote:
All of you are nazis!
Hmmm... that might work. :-)

Fuzzyman
http://www.voidspace.org.uk/python/articles.shtml

Dec 23 '06 #808
Fuzzyman ha escrito:
Perhaps only with the addendum that although 'Lisp roolz', no-one uses
for anything of relevance anymore and it is continuing it's geriatric
decline into obscurity. ;-)
I do not think that i cannot agree with the contrary of this but i do
not think the contrary neither.

I am being said that LISP is being actively pursued by a number of
joung hackers as Graham and Tilton. Do not believe?

Ken Tilton has noticed that Dalai Lama has becomed interested in LISP
also.

Dec 24 '06 #809
On Sat, 23 Dec 2006 12:38:30 -0800, Fuzzyman wrote:
>
Lars Rune Nøstdal wrote:
>On Fri, 08 Dec 2006 03:07:09 -0800, Mark Tarver wrote:
How do you compare Python to Lisp? What specific advantages do you
think that one has over the other?

Note I'm not a Python person and I have no axes to grind here. This is
just a question for my general education.

Mark

Kill this frakkin thread; Lisp rules -- while Python is boring (but better
than many other alternatives). E.O.F.

Perhaps only with the addendum that although 'Lisp roolz', no-one uses
for anything of relevance anymore and it is continuing it's geriatric
decline into obscurity. ;-)
Screw it; I'll die a "non-professional" programmer if I have to. Meanwhile
ridiculing and scorning all the fools using inferior languages. *hah!*

If I can't do what I love when it comes to programming I'd rather have a
shitty non-programming job that enables me to instantly forget what I've
been doing while at work as soon as I'm done for the day.

My trade -- my tools. :}

--
Lars Rune Nøstdal
http://nostdal.org/

Dec 27 '06 #810
George Sakkis wrote:
JS******@gmail.com wrote:
>1. Lisp is the only industrial strength language
^^^^^^^^^^^^^^^^^^^
You keep using that phrase. I don't think it means what you think it
means.
[Vizzini has just cut the rope The Dread Pirate Roberts is climbing up]
Vizzini: HE DIDN'T FALL? INCONCEIVABLE.
Inigo Montoya: You keep using that word. I do not think it means what
you think it means.
Mar 7 '07 #811
Brian Adkins wrote:
George Sakkis wrote:
>JS******@gmail.com wrote:
>>1. Lisp is the only industrial strength language
Neither Lisp nor Python is an "industrial strength language".
The infrastructure is too weak. Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.

John Nagle
Mar 7 '07 #812
John Nagle wrote:
Neither Lisp nor Python is an "industrial strength language".
The infrastructure is too weak. Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.

John Nagle
In your excitement to post a sweeping and inaccurate generalization (you
missed diss'ing Ruby), I think you may have missed the point of my post.
I surely wasn't trying to restart a dead thread, I just thought it was
funny that there was a similarity to a line from Princess Bride in the
thread (see relevant part below that you cut out).

If you want to restart a debate, please go back and reply to some
serious post in the thread - don't hijack mine for your own evil
purposes and cut out the good parts - did you even see the movie?

George Sakkis wrote:
You keep using that phrase. I don't think it means what you think it
means.
[Vizzini has just cut the rope The Dread Pirate Roberts is climbing up]
Vizzini: HE DIDN'T FALL? INCONCEIVABLE.
Inigo Montoya: You keep using that word. I do not think it means what
you think it means.
Mar 7 '07 #813


Brian Adkins wrote:
John Nagle wrote:
> Neither Lisp nor Python is an "industrial strength language".
The infrastructure is too weak. Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.

John Nagle


In your excitement to post a sweeping and inaccurate generalization (you
missed diss'ing Ruby), I think you may have missed the point of my post.
I surely wasn't trying to restart a dead thread, I just thought it was
funny that there was a similarity to a line from Princess Bride in the
thread (see relevant part below that you cut out).

If you want to restart a debate, please go back and reply to some
serious post in the thread - don't hijack mine for your own evil
purposes and cut out the good parts - did you even see the movie?
Yes. I think George did, too. (I was wondering what you were up to.)

:)

kt

>
George Sakkis wrote:
You keep using that phrase. I don't think it means what you think it
means.

[Vizzini has just cut the rope The Dread Pirate Roberts is climbing up]
Vizzini: HE DIDN'T FALL? INCONCEIVABLE.
Inigo Montoya: You keep using that word. I do not think it means what
you think it means.
--
Well, I've wrestled with reality for 35 years, Doctor, and
I'm happy to state I finally won out over it.
-- Elwood P. Dowd

In this world, you must be oh so smart or oh so pleasant.
-- Elwood's Mom
Mar 8 '07 #814
Brian Adkins wrote:
John Nagle wrote:
If you want to restart a debate, please go back and reply to some
serious post in the thread - don't hijack mine for your own evil
purposes and cut out the good parts - did you even see the movie?
If you want to post jokes, try rec.humor.funny. Although
they mave moderation and you may not

John Nagle
Mar 8 '07 #815
John Nagle wrote:
Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.
Do you have any real experience with recent linux distros? Or with any
_real_ hosting providers?

Because what you've said is clearly not true. Just because the
situation isn't as easy _for you_ as you would like, doesn't mean that
Python is being ignored to the extent you're trying to claim.

-alex23

Mar 8 '07 #816
"alex23" <wu*****@gmail.comwrites:
Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.

Do you have any real experience with recent linux distros? Or with any
_real_ hosting providers?
Care to name a "real" hosting provider that cares whether Python works?
Mar 8 '07 #817
alex23 wrote:
John Nagle wrote:
>Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.

Do you have any real experience with recent linux distros? Or with any
_real_ hosting providers?

Because what you've said is clearly not true. Just because the
situation isn't as easy _for you_ as you would like, doesn't mean that
Python is being ignored to the extent you're trying to claim.

-alex23
alex23 - please don't feed the trolls.
Mar 8 '07 #818
Brian Adkins wrote:
alex23 wrote:
>John Nagle wrote:
>>Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.


Do you have any real experience with recent linux distros? Or with any
_real_ hosting providers?
Do you? You're writing from a gmail account, not your own site.

I have four hosting accounts with EZpublishing and a dedicated server
at Aplus.net. I spent weeks trying to find a hosting provider that
would provide a Python environment that "just works", like everyone
does for Perl. What you typically get is a basic Python 2.4,
and a refusal to install more packages, because it's so time-consuming.
Or a quote of $50 to $150 per hour to install Python packages.

There are a very few hosting providers that actually want to provide
Python hosting, such as Hard Hat Hosting. But most don't.
>>
Because what you've said is clearly not true. Just because the
situation isn't as easy _for you_ as you would like, doesn't mean that
Python is being ignored to the extent you're trying to claim.
I don't see any evidence to back up this unsubstantiated claim.

John Nagle
Mar 8 '07 #819
John Nagle wrote:
Brian Adkins wrote:
>alex23 wrote:
>>John Nagle wrote:

Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.
Do you have any real experience with recent linux distros? Or with any
_real_ hosting providers?

Do you? You're writing from a gmail account, not your own site.

I have four hosting accounts with EZpublishing and a dedicated server
at Aplus.net. I spent weeks trying to find a hosting provider that
would provide a Python environment that "just works", like everyone
does for Perl. What you typically get is a basic Python 2.4,
and a refusal to install more packages, because it's so time-consuming.
Or a quote of $50 to $150 per hour to install Python packages.

There are a very few hosting providers that actually want to provide
Python hosting, such as Hard Hat Hosting. But most don't.
>>>
Because what you've said is clearly not true. Just because the
situation isn't as easy _for you_ as you would like, doesn't mean that
Python is being ignored to the extent you're trying to claim.

I don't see any evidence to back up this unsubstantiated claim.

John Nagle
Ok, since you provided some details you appear less troll-like, so I'll
ignore my own advice.

With prices of dedicated servers and virtual private servers so cheap,
why would anyone get a hosting account without root access? Once you
have root, just install whatever you want. It shouldn't take more than a
few minutes to install Python or whatever language you desire.

If "apt-get install" doesn't give you a recent enough version, just
download the source and compile it.

Brian

P.S. very cool rag doll physics by the way...
Mar 8 '07 #820
Brian Adkins <lo***************@gmail.comwrites:
With prices of dedicated servers and virtual private servers so cheap,
why would anyone get a hosting account without root access?
Because it turns you into a sysadmin instead of letting specialists
handle all the OS stuff so you can concentrate on your application.

Also, no VPS where you have to run your own httpd instance (and
usually your own database if you're using one) can possibly be as
cheap as a virtual host where you're sharing the same httpd with
thousands of other sites.
Mar 8 '07 #821
Paul Rubin wrote:
Brian Adkins <lo***************@gmail.comwrites:
>With prices of dedicated servers and virtual private servers so cheap,
why would anyone get a hosting account without root access?

Because it turns you into a sysadmin instead of letting specialists
handle all the OS stuff so you can concentrate on your application.
I'm not sure what "OS stuff" you're referring to, but my interactions
with my dedicated host are quite similar to when I had a shared hosting
account (except I never have to contact the hosting company like I used
to with a shared account - it just keeps humming along).

Besides, this whole thing got started with John resurrecting the
"industrial strength" argument. I hardly think a shared hosting account
would be considered "industrial strength". If you're not willing to deal
with a dedicated server, then I don't think you're serious about
"industrial strength", right? Not to mention the fact that none of this
has anything to do with the "industrial strengthness" of the language.
>
Also, no VPS where you have to run your own httpd instance (and
usually your own database if you're using one) can possibly be as
cheap as a virtual host where you're sharing the same httpd with
thousands of other sites.
And you *want* to share the same httpd with thousands of other sites?

I can relate to what you're saying. I tried the shared hosting thing
originally, but the saying, "you get what you pay for" holds some truth
here.

Maybe y'all should change the thread to "Why don't shared hosting
companies treat Python customers better?" or something along those
lines. We seem to have drifted from "Princess Bride" quotes and the
merits of Lisp vs. Python ;)
Mar 8 '07 #822
Paul Rubin wrote:
Brian Adkins <lo***************@gmail.comwrites:
>>With prices of dedicated servers and virtual private servers so cheap,
why would anyone get a hosting account without root access?

Because it turns you into a sysadmin instead of letting specialists
handle all the OS stuff so you can concentrate on your application.
Exactly. I want to outsource these headaches to someone who's
doing it for a thousand servers and has a standardized "just works"
configuration that's Python-friendly. It's inefficient to work
through all these issues for a single server. I have better things
to do with my time.

When starting out with this project, I'd made the assumption that
Python was a stable, working, well-supported technology, like Perl
hosting. It isn't.

It's really amazing how stable Perl hosting is. I have a site,
"downside.com", that's been running a Perl application since 2000,
with essentially no attention since 2002. It's been migrated to new
servers twice by the hosting provider, without my having had to change
anything. Or even do anything. It's talking to a MySQL database,
going out and retrieving files from the SEC, parsing complex documents,
gettting a feed from NASDAQ, responding to queries, and doing
quite a bit of work. When developing that, I had no serious problems with Perl.

Python, on the other hand, is uphill all the way. Constant trouble
with version issues, especially with C components called from Python.
MySQLdb, M2Crypto, SSL - they all have platform/version
incompatibility problems. I just spent three days making M2Crypto
work on a new Linux server with a different Red Hat version.
Neither Python's packaging tools nor the platform's packaging
tools deal adequately with these issues.

The language is fine. It's those weakly-supported packages out
there in the cold that are the problem. (I definitely agree with
Guido that SWIG is a bad idea. I've been combing through the 24,000
lines of C generated by SWIG for M2Crypto, figuring out the compile
errors and what caused them. This is neither fun nor desirable.)

I get the feeling that Python isn't used much for general web hosting
any more. Only about two messages per month on this newsgroup mention
a hosting-related issue.

One wonders how many people try and give up.

John Nagle
Mar 8 '07 #823
John Nagle wrote:
Paul Rubin wrote:
>Brian Adkins <lo***************@gmail.comwrites:
>>With prices of dedicated servers and virtual private servers so cheap,
why would anyone get a hosting account without root access?

Because it turns you into a sysadmin instead of letting specialists
handle all the OS stuff so you can concentrate on your application.

Exactly. I want to outsource these headaches to someone who's
doing it for a thousand servers and has a standardized "just works"
configuration that's Python-friendly. It's inefficient to work
through all these issues for a single server. I have better things
to do with my time.

When starting out with this project, I'd made the assumption that
Python was a stable, working, well-supported technology, like Perl
hosting. It isn't.

It's really amazing how stable Perl hosting is. I have a site,
"downside.com", that's been running a Perl application since 2000,
with essentially no attention since 2002. It's been migrated to new
servers twice by the hosting provider, without my having had to change
anything. Or even do anything. It's talking to a MySQL database,
going out and retrieving files from the SEC, parsing complex documents,
gettting a feed from NASDAQ, responding to queries, and doing
quite a bit of work. When developing that, I had no serious problems
with Perl.
This may sound like I'm baiting you, but it's a sincere question. If
your experience with Perl was so good, why did you decide to pursue
Python? Trouble free hosting and no problems in development - sounds
like it worked out well for you.

I do think that "hosting for the masses" is geared toward PHP, Perl,
..NET, etc.

I primarily develop in Ruby on Rails (I'm here 'cause the original
thread was posted to c.l.p and c.l.l) and I admit that trying that in a
shared hosting environment will probably lead to frustration, but once I
bit the bullet and got a VPS, and later a dedicated server, it was
smooth sailing, and the performance is *so* much better.

A bit of a learning curve getting Apache, Mongrel, MySQL, etc. up and
running (which was a fixed amount of time), then it just runs. In my
case, the productivity gains over my previous environment
(Java/Spring/Hibernate) was enough to justify a little pain for long
term gains. Switching from the VPS to the dedicated server with a
different company was easy because I already had the recipe to get a
server setup.
>
Python, on the other hand, is uphill all the way. Constant trouble
with version issues, especially with C components called from Python.
MySQLdb, M2Crypto, SSL - they all have platform/version
incompatibility problems. I just spent three days making M2Crypto
work on a new Linux server with a different Red Hat version.
Neither Python's packaging tools nor the platform's packaging
tools deal adequately with these issues.
Now I understand your original post a bit better. Sounds like you've had
a fair amount of frustration.
The language is fine. It's those weakly-supported packages out
there in the cold that are the problem. (I definitely agree with
Guido that SWIG is a bad idea. I've been combing through the 24,000
lines of C generated by SWIG for M2Crypto, figuring out the compile
errors and what caused them. This is neither fun nor desirable.)

I get the feeling that Python isn't used much for general web hosting
any more. Only about two messages per month on this newsgroup mention
a hosting-related issue.
It could be that the web folks are concentrated elsewhere - maybe a
TurboGears or Django forum? Are you just using Python with CGI, or with
a web framework? If the latter, I expect the framework folks could be
quite helpful.
>
One wonders how many people try and give up.

John Nagle
Mar 8 '07 #824


John Nagle wrote:
Brian Adkins wrote:
>John Nagle wrote:

>If you want to restart a debate, please go back and reply to some
serious post in the thread - don't hijack mine for your own evil
purposes and cut out the good parts - did you even see the movie?


If you want to post jokes...
fer chrissakes, it was the OP of "means what you think it means" who was
obviously doing Princess Bride and being reasonably funny, Brian just
missed that it was deliberate.

, try ...

.....comp.lang.lisp. All the SBCL bug reports are starting to drag down
the mood of this NG.

kt

--
Well, I've wrestled with reality for 35 years, Doctor, and
I'm happy to state I finally won out over it.
-- Elwood P. Dowd

In this world, you must be oh so smart or oh so pleasant.
-- Elwood's Mom
Mar 8 '07 #825
Brian Adkins <lo***************@gmail.comwrites:
This may sound like I'm baiting you, but it's a sincere question. If
your experience with Perl was so good, why did you decide to pursue
Python? Trouble free hosting and no problems in development - sounds
like it worked out well for you.
Er, because the Perl language itself is up there with Vogon poetry in
bletcherousness?
Mar 8 '07 #826
Ken Tilton wrote:
John Nagle wrote:
>Brian Adkins wrote:
>>John Nagle wrote:
If you want to restart a debate, please go back and reply to some
serious post in the thread - don't hijack mine for your own evil
purposes and cut out the good parts - did you even see the movie?


If you want to post jokes...

fer chrissakes, it was the OP of "means what you think it means" who was
obviously doing Princess Bride and being reasonably funny,
Turns out John is having quite a tough time with Python web hosting (the
thread has split off to a c.l.p only fork), so I'm going to cut him some
slack. Maybe with some lovin' we can woo him over to c.l.l ;)
Brian just
missed that it was deliberate.
D'oh!
, try ...

....comp.lang.lisp. All the SBCL bug reports are starting to drag down
the mood of this NG.

kt
Mar 8 '07 #827
Brian Adkins wrote:
Ken Tilton wrote:
>John Nagle wrote:
Turns out John is having quite a tough time with Python web hosting (the
thread has split off to a c.l.p only fork), so I'm going to cut him some
slack. Maybe with some lovin' we can woo him over to c.l.l ;)
Been there, done that. I've actually used an original refrigerator
sized Symbolics LISP machine.

I tend to think of Python as a LISP with infix syntax.
We have a better handle on what to put in a dynamic language now, and
Python does a good job in that direction. I'm happy with the
language; it's the integration with external components that isn't
working.

John Nagle
Mar 8 '07 #828
On Mar 8, 5:23 am, John Nagle <n...@animats.comwrote:
Brian Adkins wrote:
Ken Tilton wrote:
John Nagle wrote:
Turns out John is having quite a tough time with Python web hosting (the
thread has split off to a c.l.p only fork), so I'm going to cut him some
slack. Maybe with some lovin' we can woo him over to c.l.l ;)

Been there, done that. I've actually used an original refrigerator
sized Symbolics LISP machine.

I tend to think of Python as a LISP with infix syntax.
We have a better handle on what to put in a dynamic language now, and
Python does a good job in that direction. I'm happy with the
language; it's the integration with external components that isn't
working.

John Nagle

OMG! And I thought the thread was dead!

Necromancers! Run!!!

Mar 8 '07 #829
On 3/8/07, Dennis Lee Bieber <wl*****@ix.netcom.comwrote:
On Thu, 08 Mar 2007 06:13:15 GMT, John Nagle <na***@animats.com>
declaimed the following in comp.lang.python:

When starting out with this project, I'd made the assumption that
Python was a stable, working, well-supported technology, like Perl
hosting. It isn't.
It is interesting how your text seems to blame "Python" (the
language) when comparing not to "Perl" (the language) but to a service
field of "Perl hosting".

At the least, be fair and use the phrase "Python hosting" in any
place you'd have used "Perl hosting"...
(I note in passing you did have a comment about Python, the language,
being good... but anyone reading quickly would tend to interpret, say
the part quoted above, as "Python is unstable, doesn't work, and
unsupported" -- none of which, in my experience, is true... Low-cost web
hosting with Python is a different kettle of fish [chowder, probably
<G>])
Mr. Nagle has a history of phrasing his personal problems as if they
were vast, sweeping, general issues affecting the entire industry. The
original post, and several followups, referred to *real* hosting
provides, with the emphasis, and in the context of "industrial
strength". Any *real* hosting provider is going to support whatever
language and environment I tell them to, because I'm going to pay them
a lot of money for excellent support and if they give me any trouble I
will go with someone who provides what I want.
What was *meant* was low priced, zero maintenance, reasonably reliable
consumer level hosting. Thats a totally different market, it's not
"industrial strength", and it doesn't merit the emphasis on *real*
provider. And it is true that in that realm Python is not well
represented.
Mar 8 '07 #830
"Chris Mellon" <ar*****@gmail.comwrites:
Any *real* hosting provider is going to support whatever
language and environment I tell them to, because I'm going to pay them
a lot of money for excellent support and if they give me any trouble I
will go with someone who provides what I want.
Hosting providers are generally not in the business of doing anything
like that, except the low end ones that mostly support PHP.
What was *meant* was low priced, zero maintenance, reasonably reliable
consumer level hosting. Thats a totally different market, it's not
"industrial strength", and it doesn't merit the emphasis on *real*
provider. And it is true that in that realm Python is not well
represented.
Python is not so well represented in "industrial strength" hosting
either; that kind of hosting generally leaves language support up to
the customer.
Mar 8 '07 #831
In article <7x************@ruckus.brouhaha.com>,
Paul Rubin <http://ph****@NOSPAM.invalidwrote:
>
Care to name a "real" hosting provider that cares whether Python works?
http://www.webfaction.com/
--
Aahz (aa**@pythoncraft.com) <* http://www.pythoncraft.com/

"I disrespectfully agree." --SJM
Mar 8 '07 #832
aa**@pythoncraft.com (Aahz) writes:
Care to name a "real" hosting provider that cares whether Python works?
http://www.webfaction.com/
Thanks! This is good to know about.
Mar 8 '07 #833
Paul Rubin wrote:
"Chris Mellon" <ar*****@gmail.comwrites:
>>Any *real* hosting provider is going to support whatever
language and environment I tell them to, because I'm going to pay them
a lot of money for excellent support and if they give me any trouble I
will go with someone who provides what I want.
Who are you buying from?
Hosting providers are generally not in the business of doing anything
like that, except the low end ones that mostly support PHP.

>>What was *meant* was low priced, zero maintenance, reasonably reliable
consumer level hosting. Thats a totally different market, it's not
"industrial strength", and it doesn't merit the emphasis on *real*
provider. And it is true that in that realm Python is not well
represented.


Python is not so well represented in "industrial strength" hosting
either; that kind of hosting generally leaves language support up to
the customer.
The industry trend seems to be towards two dedicated server offerings.
One is dedicated hosting in a relatively controlled manner, with web based
server control and a somewhat locked down environment. You get
root access, but if you mess with the controlled environment, it's
your problem if anything breaks. The Plesk control panel is widely
used for this.

The other offering is "power, pipe, and ping" - an empty machine in
a rack. What you do with it is your problem.

In neither case is the Python environment typically ready for serious use
out of the box.

There's denial in the Python community that this is a problem, but it is.
The Ruby on Rails people get it; they work to provide a seamless experience
for web developers. Which is why their market share is way up over two years
ago.

Here's an overview of the dedicated server industry from the Gartner
Group:

http://www.savvis.net/NR/rdonlyres/E...ngMQGARTNE.pdf

There's an emphasis on standardized offerings from the major players.
Customized environments are usually either user-managed or offered
as part of enterprise IT outsourcing.

John Nagle
Mar 9 '07 #834
John Nagle <na***@animats.comwrites:
There's denial in the Python community that this is a problem,
but it is. The Ruby on Rails people get it; they work to provide a
seamless experience for web developers. Which is why their market
share is way up over two years ago.
I do know that a big Perl site that I hang out on (but am not involved
with the software for) decided to redo its software and had a big
discussion of what to use. Python/Django was a serious contender but
in the end they chose Ruby on Rails. I didn't pay too close attention
to the exact rationale but it was somewhat disappointing and yet
unsurprising.
Mar 9 '07 #835
Paul Rubin <http://ph****@NOSPAM.invalidwrote:
"alex23" <wu*****@gmail.comwrites:
Hosting providers and distro
makers aren't concerned over whether Python works. They
care if C, C++, Java, PHP, and Perl work, but not Python or LISP.
Ask them.
Do you have any real experience with recent linux distros? Or with any
_real_ hosting providers?

Care to name a "real" hosting provider that cares whether Python works?
The first name that comes to mind is xs4all, the major Dutch provider
(they've even got their own Wikipedia entry!-) -- they've long offered
outstanding sponsorship to the Python community, hosting lots of
services for us, btw.

But the OP's mention of "distro" ain't even funny -- ever since RedHat's
original implementation of RPM (in Python), ever more Linux distros are
positively _fanatical_ about Python. Ubuntu, for example, has as its
BDFL Mark Shuttleworth, who (since, as he explains, he made his fortune
thanks to Python -- Python's what allowed him to build Thawte, which he
later sold for mucho dinero) is an unabashed fan of Python; the "XO"
(nee "One Laptop Per Child", OLPC, and once known as the "$100 laptop")
uses Python as its preferred (only?-) application language, and it's
slated to be the most widely distributed Python distro if it hits even
half of its ambitious target-numbers...
Alex
Mar 9 '07 #836

"Alex Martelli" <al***@mac.comwrote in message
news:1h**************************@mac.com...
| later sold for mucho dinero) is an unabashed fan of Python; the "XO"
| (nee "One Laptop Per Child", OLPC, and once known as the "$100 laptop")
| uses Python as its preferred (only?-) application language, and it's
| slated to be the most widely distributed Python distro if it hits even
| half of its ambitious target-numbers...

The exciting part to me is that the somewhat inovative user inteface is
writen in Python and intended to be hacked on by the users (kids) around
the world.

tjr

Mar 9 '07 #837
On 9 Mar, 02:32, John Nagle <n...@animats.comwrote:
>
[Dedicated server offerings]

I'm not so familiar with dedicated servers, being unlikely to buy into
that kind of hosting any time soon - I'm not running a business with
serious reliability/control/uptime constraints where I could justify
spending that kind of money. However...
In neither case is the Python environment typically ready for serious use
out of the box.
Well, I can't say much about the off-the-shelf, locked down solutions
with Plesk control panels, but if you just get a box with the pipes
("an empty machine in a rack"), you make from that what you will. Such
a solution isn't likely to be any good for Perl, PHP or Ruby out of
the box, either. I mean, what's the operating system? Do you have to
provide that? If so, any modern GNU/Linux distribution would give you
lots of acceptable packages for Python.
There's denial in the Python community that this is a problem, but it is.
The Ruby on Rails people get it; they work to provide a seamless experience
for web developers. Which is why their market share is way up over two years
ago.
They got a number of things right. However, the big difference as I
see it is that instead of wondering why various providers don't
support Rails, they've either gone and started their own (including
virtual private server solutions), or they've found existing, flexible
providers (such as WebFaction) who were already providing lots of
plumbing for various Python-based solutions and persuaded them to
provide support for Rails. Last time I looked, Rails deployment
situation seemed closely tied to FastCGI and a lot of other stuff that
is arguably less attractive to various hosting providers than many of
the ways you can deploy Python Web solutions.

As for the denial, I can see your point to an extent. Before the Rails
hype there were discussions about making Python solutions as
attractive to deploy as PHP solutions, but a lot of the "movers and
shakers" in the Python Web community seem to have the luxury of
managing their own Internet-facing infrastructure. Thus, any progress
really has to be driven by people like you with your own hosting
requirements.

Paul

Mar 9 '07 #838
On 2007-03-09 07:00:06 +0000, al***@mac.com (Alex Martelli) said:
(nee "One Laptop Per Child", OLPC, and once known as the "$100 laptop")
uses Python as its preferred (only?-) application language, and it's
slated to be the most widely distributed Python distro if it hits even
half of its ambitious target-numbers...
But it won't get anywhere near that because it's a stupid an
ill-conceived idea (not because of Python, note!). The electronic
gadget people need in the developing world is a mobile phone not a
computer.

Mar 9 '07 #839

On Mar 9, 2007, at 1:10 PM, Tim Bradshaw wrote:
On 2007-03-09 07:00:06 +0000, al***@mac.com (Alex Martelli) said:
>(nee "One Laptop Per Child", OLPC, and once known as the "$100
laptop")
uses Python as its preferred (only?-) application language, and it's
slated to be the most widely distributed Python distro if it hits
even
half of its ambitious target-numbers...

But it won't get anywhere near that because it's a stupid an
ill-conceived idea (not because of Python, note!). The electronic
gadget people need in the developing world is a mobile phone not a
computer.
Isn't the idea to provide a learning environment for children in the
developing world (rather than a generally useful gadget)? Perhaps a
mobile phone would also be good for this sort of thing -- if it had a
'show source' button :-)

obpython: isn't OLPC is right in line with 'Computer Programming for
Everybody'?



Mar 9 '07 #840
En Fri, 09 Mar 2007 16:10:51 -0300, Tim Bradshaw <tf*@tfeb.orgescribió:
On 2007-03-09 07:00:06 +0000, al***@mac.com (Alex Martelli) said:
>(nee "One Laptop Per Child", OLPC, and once known as the "$100 laptop")
uses Python as its preferred (only?-) application language, and it's
slated to be the most widely distributed Python distro if it hits even
half of its ambitious target-numbers...
But it won't get anywhere near that because it's a stupid an
ill-conceived idea (not because of Python, note!). The electronic
gadget people need in the developing world is a mobile phone not a
computer.
What for?
That requires a phone company, installed antennas everywhere, and
available power to charge batteries. Without forgetting you to pay the
bill, of course.
I don't think OLPC would actually help people so much, but a mobile phone
would be almost useless. Like it was -actually happened- donating nice
computers for use in remote elementary schools with no power source.

--
Gabriel Genellina

Mar 9 '07 #841
Gabriel Genellina wrote:
En Fri, 09 Mar 2007 16:10:51 -0300, Tim Bradshaw <tf*@tfeb.orgescribió:
The electronic gadget people need in the developing world is a mobile phone not a
computer.

What for?
That requires a phone company, installed antennas everywhere, and
available power to charge batteries. Without forgetting you to pay the
bill, of course.
"What people in the developing world needs is Iridium!" Oops! ;-) I've
heard of people doing interesting things with mobile phones in various
developing countries, and I'm sure that the infrastructure is
gradually expanding in some places, but the mobile phone is largely a
"consumer" device: you pay big corporations to use their networks and
to download largely frivolous content. I hardly think such things are
on the same page as the OLPC vision.
I don't think OLPC would actually help people so much, but a mobile phone
would be almost useless. Like it was -actually happened- donating nice
computers for use in remote elementary schools with no power source.
Yes, such things were mentioned in the FOSDEM OLPC talk [1]. It's all
very well having rich Europeans or Americans (especially thinking of
people like Bill Gates who seems to opine regularly on such things in
a way which is unlikely to be completely disconnected to his business
interests) saying that all the old kit that people don't want any more
(because they must have that new quad-core laptop!) should be shipped
out to places that "need" it, but the issue is whether the recipients
really do need to have aging, power-hungry technology with special
waste disposal requirements when it finally gives up the ghost.

Sure, give people a bunch of old PCs (and why not all those CRTs,
too?) which consume tens of watts per unit. Do we have any old solar
panels to ship out with them? Or how about building some nuclear power
stations to go with all this equipment? Still a good idea?!

Paul

[1] Videos are available at http://www.fosdem.org/2007/media/video -
and in an open format, too. (Hint to any conference people thinking of
just uploading stuff to YouTube!)

Mar 10 '07 #842
"Gabriel Genellina" <ga*******@yahoo.com.arwrites:
En Fri, 09 Mar 2007 16:10:51 -0300, Tim Bradshaw <tf*@tfeb.orgescribiÂŽó:
[...]
ill-conceived idea (not because of Python, note!). The electronic
gadget people need in the developing world is a mobile phone not a
computer.

What for?
That requires a phone company, installed antennas everywhere, and
available power to charge batteries. Without forgetting you to pay
the bill, of course.
I don't think OLPC would actually help people so much, but a mobile
phone would be almost useless.
[...]

How wrong can you get?

Mobile phones have been making a significant economic impact in many
places in the third world. Sub-saharan Africa has seen huge growth in
access to mobile phones over the past few years, for example. A
recent report indicates there are now over 100 million mobile phones
in use in Africa. That's a huge change im communications from five
years ago, but more than that, since people often don't own a mobile,
but rent them by the minute from at the roadside, access levels must
be much higher than that would imply (i.e., much greater than 10% of
the continent's population).

Mobile connections are intrinsically cheaper than fixed-line networks,
can be rolled out faster, and have a disproportionately large impact
in places where such electronic communications have in the past been
absent, when compared with places like Europe and the US. For
example, farmers report that they find mobile phones valuable to get
information on market prices; without them, they would in the past
have little choice but to physically go to market and hope for the
best.

http://www.timesonline.co.uk/tol/new...icle737130.ece
I know nothing about OLPC, but I hope they're spending lots of time
talking to children, teachers, and academics, and to anybody with a
good criticism. It must be tricky for big projects to stay connected
to reality.
John
Mar 10 '07 #843
John Nagle <na***@animats.comwrites:
[...]
Python, on the other hand, is uphill all the way. Constant trouble
with version issues, especially with C components called from Python.
MySQLdb, M2Crypto, SSL - they all have platform/version
incompatibility problems. I just spent three days making M2Crypto
work on a new Linux server with a different Red Hat version.
Neither Python's packaging tools nor the platform's packaging
tools deal adequately with these issues.
[...]

You haven't been using mod_python, by any chance?
John
Mar 10 '07 #844
John J. Lee wrote:
John Nagle <na***@animats.comwrites:
[...]
> Python, on the other hand, is uphill all the way. Constant trouble
with version issues, especially with C components called from Python.
MySQLdb, M2Crypto, SSL - they all have platform/version
incompatibility problems. I just spent three days making M2Crypto
work on a new Linux server with a different Red Hat version.
Neither Python's packaging tools nor the platform's packaging
tools deal adequately with these issues.

[...]

You haven't been using mod_python, by any chance?
John
No, haven't started to deal with that yet. Still using
CGI. Not sure whether to use mod_python or fastcgi for the
small requests where the Python load time swamps the time
to do one SQL select and reply. Comments?

John Nagle
Mar 11 '07 #845
John Nagle <na***@animats.comwrites:
John J. Lee wrote:
John Nagle <na***@animats.comwrites:
[...]
Python, on the other hand, is uphill all the way. Constant trouble
with version issues, especially with C components called from Python.
MySQLdb, M2Crypto, SSL - they all have platform/version
incompatibility problems. I just spent three days making M2Crypto
work on a new Linux server with a different Red Hat version.
Neither Python's packaging tools nor the platform's packaging
tools deal adequately with these issues.
[...]
You haven't been using mod_python, by any chance?
John

No, haven't started to deal with that yet. Still using
CGI. Not sure whether to use mod_python or fastcgi for the
small requests where the Python load time swamps the time
to do one SQL select and reply. Comments?
mod_python relies on an unsupported feature of Python, namedly
multiple interpreters --risk of more pain with C extensions.
John
Mar 11 '07 #846
On Mar 11, 12:31 pm, j...@pobox.com (John J. Lee) wrote:
John Nagle <n...@animats.comwrites:
John J. Lee wrote:
John Nagle <n...@animats.comwrites:
[...]
> Python, on the other hand, is uphill all the way. Constant trouble
>>with version issues, especially with C components called from Python.
>>MySQLdb, M2Crypto, SSL - they all have platform/version
>>incompatibility problems. I just spent three days making M2Crypto
>>work on a new Linux server with a different Red Hat version.
>>Neither Python's packaging tools nor the platform's packaging
>>tools deal adequately with these issues.
[...]
You haven't been usingmod_python, by any chance?
John
No, haven't started to deal with that yet. Still using
CGI. Not sure whether to usemod_pythonor fastcgi for the
small requests where the Python load time swamps the time
to do one SQL select and reply. Comments?

mod_pythonrelies on an unsupported feature of Python, namedly
multiple interpreters --risk of more pain with C extensions.
As usual, those bashing up on mod_python tend not to really know what
they are talking about. :-(

Although multiple Python interpreters cannot be manipulated directly
from within a Python script, they can from the Python C API and it is
very much a feature of Python and has been for a long time.

The only issue with multiple sub interpreters in respect of C
extension modules is that implementers of those C extension modules
take the easy path and use the simplified thread API for GIL locking.
The consequence of them doing that is that their C extension module
may not work when used in anything but the first interpreter created
by Python. If instead of using the simplified thread API for GIL
locking they used other parts of the Python threading API as
appropriate and did thread lock handling properly for multiple
interpreters, there would not be an issue.

Even so, to get such a C extension module working in the context of
mod_python simply means telling mod_python to run that particular
application in the first interpreter instance by specifying the
mod_python directive:

PythonInterpreter main_interpreter

Thus, the problem is not mod_python at all, but that the C extension
modules implementer didn't bother to implement their module so as to
be usable within a system such as mod_python where multiple
interpreters are used. Further, mod_python even provides a way to work
around the problems with such third party C extension modules.

If you feel that this is not the case and mod_python is still broken
in some way, please properly explain what the problem is.

PS. Yes I do know that forcing using of main interpreter in mod_python
only helps solve this problem in mod_python 3.2 and later and did not
help with older versions.

Graham

Mar 11 '07 #847
"Graham Dumpleton" <Gr**************@gmail.comwrites:
On Mar 11, 12:31 pm, j...@pobox.com (John J. Lee) wrote:
[...]
mod_python relies on an unsupported feature of Python, namely
multiple interpreters --risk of more pain with C extensions.

As usual, those bashing up on mod_python tend not to really know what
they are talking about. :-(

Although multiple Python interpreters cannot be manipulated directly
from within a Python script, they can from the Python C API and it is
very much a feature of Python and has been for a long time.
I didn't dispute that multiple interpreters are a feature of Python.
I said that they are an unsupported feature -- at least, Martin
v. Loewis says they're "just broken", which is close enough for me:

http://groups.google.co.uk/group/com...4accc133afbc96

"""
In any case, it looks like that the "multiple interpreters" feature of
Python is just broken.
"""

[...]
Even so, to get such a C extension module working in the context of
mod_python simply means telling mod_python to run that particular
application in the first interpreter instance by specifying the
mod_python directive:

PythonInterpreter main_interpreter
[...]

Is it possible to ask mod_python to start separate processes to serve
requests, rather than "separate" interpreters? We couldn't see a way.
John
Mar 14 '07 #848
On Mar 15, 7:22 am, j...@pobox.com (John J. Lee) wrote:
"Graham Dumpleton" <Graham.Dumple...@gmail.comwrites:
On Mar 11, 12:31 pm, j...@pobox.com (John J. Lee) wrote:
[...]
>mod_pythonrelies on an unsupported feature of Python, namely
multiple interpreters --risk of more pain with C extensions.
As usual, those bashing up onmod_pythontend not to really know what
they are talking about. :-(
Although multiple Python interpreters cannot be manipulated directly
from within a Python script, they can from the Python C API and it is
very much a feature of Python and has been for a long time.

I didn't dispute that multiple interpreters are a feature of Python.
I said that they are an unsupported feature -- at least, Martin
v. Loewis says they're "just broken", which is close enough for me:

http://groups.google.co.uk/group/com...e_thread/threa...

"""
In any case, it looks like that the "multiple interpreters" feature of
Python is just broken.
"""
For mod_python at least, the issues described there do not present as
a problem because in mod_python sub interpreters are never destroyed
while the process is running. Thus as far as the implementation of
mod_python goes it is fine to key off the pointer to the interpreter
as one knows interpreters will never go away.

In the more general case I can see that it may be an issue for some
small percentage of C extension modules which may want to cache
information per interpreter. This though would only be the case if
they wanted to exclusively hold everything directly within the C code
space. Although it would perceivably slow access down, there is
nothing to stop such a module instantiating its own pseudo module
within the context of a sub interpreter using PyImport_AddModule().
This Python module could then be used to hold objects created by
PyCObject_FromVoidPtr() with access later being had by using
PyCObject_AsVoidPtr() after having looked up the object in the module.
As necessary, when creating these objects, the C extension module can
associate a cleanup function to be called when the object is destroyed
by virtue of the sub interpreter being destroyed. Thus the C extension
module would be able to cope with sub interpreters coming an going.

So, more work is required and some may be concerned about efficiency
and that a user may screw with the cached data from Python code, but
it is possible to have per interpreter information with a C extension
module.
[...]Even so, to get such a C extension module working in the context of
mod_pythonsimply means tellingmod_pythonto run that particular
application in the first interpreter instance by specifying the
mod_pythondirective:
PythonInterpreter main_interpreter

[...]

Is it possible to askmod_pythonto start separate processes to serve
requests, rather than "separate" interpreters? We couldn't see a way.
Within the context of Apache it is possible to write modules which
could spawn off a separate daemon process to which requests could
later be passed for processing. An example of this included with
Apache is something like mod_cgid. Other examples of modules which
allow requests to be farmed off to separate processes, although they
work a bit differently, are mod_fastcgi, mod_scgi and mod_proxy_ajp.

To do something similar with mod_python isn't really practical because
of the way it hooks into more than just the response handling phase of
Apache. This concept though is being investigated for some version of
mod_wsgi after the initial version has been released. When
implemented, it would allow mod_wsgi to either handle WSGI
applications in the same style as mod_python within the Apache child
processes, or optionally farm the request off to a separate process
running either as the same user as Apache or a different user, in the
same style as mod_fastcgi and mod_scgi. The difference with mod_wsgi
would be that it would be one self contained module all managed from
Apache and would not require a separate executable or daemon process
to Apache to be run to which it would communicate with as the separate
daemon processes would ultimately just be a fork of the Apache parent
process and be running code from the Apache module itself. Also the
application scripts would be exactly the same no matter which mode it
was running in so no need to modify them in any special way to run
under the separate process.

Graham

Mar 14 '07 #849
John J. Lee wrote:
"Graham Dumpleton" <Gr**************@gmail.comwrites:
>>On Mar 11, 12:31 pm, j...@pobox.com (John J. Lee) wrote:
Is it possible to ask mod_python to start separate processes to serve
requests, rather than "separate" interpreters? We couldn't see a way.
That's what CGI does.

John Nagle
Mar 15 '07 #850

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

14
by: Paddy3118 | last post by:
This month there was/is a 1000+ long thread called: "merits of Lisp vs Python" In comp.lang.lisp. If you followed even parts of the thread, AND previously used only one of the languages AND...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.