Searching \ for '[PIC] php for PICs ?' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/devices.htm?key=pic
Search entire site for: 'php for PICs ?'.

Exact match. Not showing close matches.
PICList Thread
'[PIC] php for PICs ?'
2004\08\04@111619 by Stef Mientki

flavicon
face
Anyone heard of using php as programming language for PICs ?

With totally no experience in PHP, I had to modify a php program.
After browsing the web, I found what I needed and managed to modify the
program,

But during browsing the web, the above (maybe ridiculuous) question came
into my mind,
why ?
What I understand from PHP:
- it's open source
- it's used by everyone, including children and "housewifes"
- it's despiced by theoretical software guys, because it hasn't a closed
definition
(or is it because of the previous item ;-)
- it must be good, because it runs on every webserver (both unix and
windows)
- despite it's open source, there's still just one definition/derivate
- installling and get it running on my PC, took me less then 2 minutes
- the user can choose between C-like, Pascal-like (maybe others) syntax

Ok, the negative point is that it's designed for generating webpages.
But I also use a hammer to drive a srew !
So why not use PHP for PICs, ... ??

Stef Mientki

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@112657 by Marc Nicholas

flavicon
face
On Wed, 4 Aug 2004, Stef Mientki wrote:

<SNIP>
> Ok, the negative point is that it's designed for generating
webpages.
> But I also use a hammer to drive a srew ! So why not use PHP for PICs,
> ... ??

Because the interpreter would be WAY too big, for a start. Secondly, PHP
is oriented to web services and not low level programming.

-marc

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@113325 by Randy Glenn

picon face
PHP's overkill for PICs. Things like dynamic types, classes and
database libraries (one of the main reasons PHP is so popular) either
can't be done, don't work well, or are pointless on microcontrollers
the size of PICs.

Once you take away what won't / can't / shouldn't work, you're left with C :)

That said, you might be interested in Pyastra:
http://pyastra.sourceforge.net/ - Python for PICs.

On Wed, 4 Aug 2004 17:16:55 +0200, Stef Mientki
<spam_OUTs.mientkiTakeThisOuTspammailbox.kun.nl> wrote:
{Quote hidden}

--
-Randy Glenn
Computer Eng. and Mgt. Year IV, McMaster University
Chair, McMaster IEEE Student Branch

randy.glenn-at-gmail.com - glennrb-at-mcmaster.ca
randy.glenn-at-computer.org - randy_glenn-at-ieee.org
http://www.randyglenn.ca

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@123004 by John Ferrell

face picon face
All interpreters are terrible resource hogs.
PHP compiling to machine language is more into attractive.
A PHP(or any list processor) to Assembler that inputs to MPLAB for assembly
would not be a big deal. The real question is "How many would actually use
it"?

John Ferrell
http://DixieNC.US

{Original Message removed}

2004\08\04@124703 by David VanHorn

flavicon
face
At 11:29 AM 8/4/2004, John Ferrell wrote:

>All interpreters are terrible resource hogs.
>PHP compiling to machine language is more into attractive.
>A PHP(or any list processor) to Assembler that inputs to MPLAB for assembly
>would not be a big deal. The real question is "How many would actually use
>it"?

The point of any higher level language, is to abstract the hardware level.

If we could say something like:

Set timer 0 int 100mS

Then we could make this work on any pic, or avr, or anything else.
You're relieved of having to work out all the details to make this happen.
Of course you're also separated from the knowledge of how ugly this is for the processor.

Consider this:  A C programmer has no issue with something like X=7/pi
In assembler, this is pretty ugly, and the ugliness of trying to implement it, forces you to look at other ways to get the job done, using integer math, and power of 2 divides, which are easy.  Knowing just how ugly some of these operations are, you are strongly urged to write your apps in such a way that it's easy for the processor to work with.


In the POS world, we did an interpreter that had specific commands that were relvant to the sort of apps we were normally doing.  This was a very popular approach, but as you say, it's slow compared to compiled ASM. OTOH, nobody really noticed. :)

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@125249 by D. Jay Newman

flavicon
face
> >All interpreters are terrible resource hogs.

Actually forth is a fairly efficient language for embedded controllers.

> The point of any higher level language, is to abstract the hardware level.
>
> If we could say something like:
>
> Set timer 0 int 100mS
>
> Then we could make this work on any pic, or avr, or anything else.
> You're relieved of having to work out all the details to make this happen.
> Of course you're also separated from the knowledge of how ugly this is for the processor.

As a point of reference look that the uVM chips (PICs with a bootloader)
 http://www.muvium.com/

These chips are PICs with a bootloader and a Java compiler. If it can be
done for Java, it should be able to be done with PHP.
--
D. Jay Newman           ! DCX - it takes off and lands base down,
.....jayKILLspamspam@spam@sprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@125706 by David VanHorn

flavicon
face
>
>These chips are PICs with a bootloader and a Java compiler. If it can be
>done for Java, it should be able to be done with PHP.


I remember when Java was going to replace assembly, on all platforms.
Of course I remember when we were all going to have flying cars too. :)


--
Dave's Engineering Page: http://www.dvanhorn.org

If we can put a man on the moon, then why can't we put a man on the moon?

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@130119 by D. Jay Newman

flavicon
face
> I remember when Java was going to replace assembly, on all platforms.
> Of course I remember when we were all going to have flying cars too. :)

I think the flying cars were scheduled for the 80's.  :)

Actually the uVM PICs are interesting. The compiler is efficient and
I haven't had too many problems even when I'm beta testing the things.

The creator (James Caska) did a presentation at the Masters this year on
uVM.
--
D. Jay Newman           ! DCX - it takes off and lands base down,
jayspamKILLspamsprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@131901 by David VanHorn

flavicon
face
At 11:54 AM 8/4/2004, D. Jay Newman wrote:

>> I remember when Java was going to replace assembly, on all platforms.
>> Of course I remember when we were all going to have flying cars too. :)
>
>I think the flying cars were scheduled for the 80's.  :)
>
>Actually the uVM PICs are interesting. The compiler is efficient and
>I haven't had too many problems even when I'm beta testing the things.
>
>The creator (James Caska) did a presentation at the Masters this year on
>uVM.

No doubt, I was just reminiscing a bit.
There have been a number of "going to take over the world" technologies, that didn't make it, but the Java one I thought was particularly ambitious.  The idea that any one language could be the best possible candidate, on all platforms, for all applications, is just laughable.

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@132314 by D. Jay Newman

flavicon
face
> No doubt, I was just reminiscing a bit.
> There have been a number of "going to take over the world" technologies, that didn't make it, but the Java one I thought was particularly ambitious.  The idea that any one language could be the best possible candidate, on all platforms, for all applications, is just laughable.

True. However, Java was the first development system I worked with that
was cross-platform, had an object-oriented user interface library, threading,
*and* networking.

If you stuck to fairly vanilla Java you could have things working on
multiple platforms fairly quickly.
--
D. Jay Newman           ! DCX - it takes off and lands base down,
.....jayKILLspamspam.....sprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@134230 by Stef Mientki

flavicon
face
David VanHorn wrote:

{Quote hidden}

See a person as a "language"...
.. I know a lot of people (that I can tell what I want) and who can
program "this what I want thing" in either an 8-bit micro or in a 64-bit
mainframe ;-)
Maybe the fact that $$$ are involved (Sun has copyright on Java ?),
makes all these "going to take over the world" technologies per
definition unsuccesfill  (although Bill accomplished it almost).

Stef Mientki

>
>

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@140855 by Wouter van Ooijen

face picon face
> The point of any higher level language, is to abstract the
> hardware level.

That is a bit beside the point, a HLL abstracts machine (CPU) operations
at the hardware level.

> If we could say something like:
> Set timer 0 int 100mS
> Then we could make this work on any pic, or avr, or anything else.

That is work for a portable library. You could write that in C. But a
portable library is high up on the ladder of difficult software, well
above your average library or portable program (which are both well
above a non-portable program).

And who told you that your target does have a timer 0?

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@155521 by David VanHorn

flavicon
face
>
>That is work for a portable library. You could write that in C. But a
>portable library is high up on the ladder of difficult software, well
>above your average library or portable program (which are both well
>above a non-portable program).
>
>And who told you that your target does have a timer 0?

Well, if not (scenix?), you'd have to emulate it in software. :)

There are limits.

Verifone tried to do a universal development platform for all it's terminals, the effort ran out of gas and was abandoned. They had plenty of money and time to get it done.

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@174634 by Jason S

flavicon
face
When I started using Java, I wrote a program to print "Hello, World!" on a
windows PC.  I uploaded the bytecode to the school's Solaris machine and ran
it there.  I was impressed that the same file ran on both machines for about
10 seconds.  Then I remembered I could do the same thingin BASIC.

I know Java has libraries to do a lot more (like GUI stuff), but the
multiplatform aspect seems a lot less impressive in that context.


{Original Message removed}

2004\08\04@174635 by Ben Hencke

picon face
Having several years of experience with PHP, I can offer that it is a
complex runtime environment that is not easily emulated on the PIC.

The basic variable is untyped and changes from string to int to float
as needed and depending on context. Mixed associative & indexed
arrays, automatic garbage collection (memory management), copy on
write, extensive function library etc. You might be able to implement
a few of these things before the capabilities of the largest PICs was
exceeded.

If you take away these things, you are left with something very much
resembling C, except you have to put $ in front of all your variables.

You would be better off going with C, Jal, or Basic.

- Ben


On Wed, 4 Aug 2004 14:55:31 -0500, David VanHorn <EraseMEdvanhornspam_OUTspamTakeThisOuTcedar.net> wrote:
{Quote hidden}

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@174843 by D. Jay Newman

flavicon
face
> When I started using Java, I wrote a program to print "Hello, World!" on a
> windows PC.  I uploaded the bytecode to the school's Solaris machine and ran
> it there.  I was impressed that the same file ran on both machines for about
> 10 seconds.  Then I remembered I could do the same thingin BASIC.

But remember that I said that Java had cross-platform:
 - GUI
 - Threading
 - Networking

I had not seen a cross-platform development environment that included
all three of those before Java.
--
D. Jay Newman           ! DCX - it takes off and lands base down,
jayspamspam_OUTsprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\04@231059 by William Chops Westfield

face picon face
On Aug 4, 2004, at 2:50 PM, Jason S wrote:
>
> I know Java has libraries to do a lot more (like GUI stuff), but the
> multiplatform aspect seems a lot less impressive in that context.
>
Look at it this way: java is one of the first languages to incorporate
modern I/O technology within the umbrella of it's standardization
effort.  Graphics, mice, networking; none of that is IN C, pascal,
Basic, Fortran, or cobol.  They're all back in the stone age with punch
cards and lineprinters, and MAYBE an interactive TTY or CRT (displaying
ascii)  Sure, there are libraries added on, but standardization is
pretty poor, and it's still not quite the same.

In a way, that's pretty impressive.  On the other hand, I could argue
that C became a defacto industry standard precisely because it doesn't
include an IO (at the languauge level.)  It was easier to add libraries
(standardized or otherwise) to C as needed than to aim a language at
the moving target of technology...

BillW

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\08\05@023631 by Matthew Brush

flavicon
face
Just get CCS or another C compiler.  I use PHP a lot in my job and
learning C for PICs was less than a challenge.  PHP is more or less C
syntax, just like JavaScript, and many other languages.  The only thing
that's different is PIC C compilers don't have all the crap you wouldn't
be able to use that PHP has.

Cheers

Stef Mientki wrote:

{Quote hidden}

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@034637 by Alan B. Pearce

face picon face
> There have been a number of "going to take over
>the world" technologies, that didn't make it, but
>the Java one I thought was particularly ambitious.
>The idea that any one language could be the best
>possible candidate, on all platforms, for all
>applications, is just laughable.

The one I remember that shot itself in the foot was UCSD Pascal. Ran great
on CPM compatible machines, then people tried to get just the runtime module
to use on IBM PC compatibles.

Sorry, you have to buy a complete development system for that!
But it runs the same p codes?
Yes, but you still need to fork out megadollars to get the development
system for 16 bit machines!

Result was it died very fast.

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@081442 by Gerhard Fiedler

picon face
> If you stuck to fairly vanilla Java you could have things working on
> multiple platforms fairly quickly.

Yes, but...

I've yet to see a Java application for the desktop that I'd like to use.
They all seem to be either quite a bit sluggish, or non-standard (and
confusing), or both... After all these years, and with Java being
essentially free, you'd think there would be more good Java desktop
applications. I just don't see any.

And I may be mistaken, but it seems to me (from a web user perspective)
that Java driven web servers show the same performance problems.

Gerhard

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@083140 by Stef Mientki

flavicon
face
Gerhard Fiedler wrote:

>>If you stuck to fairly vanilla Java you could have things working on
>>multiple platforms fairly quickly.
>>
>>
>
>Yes, but...
>
>I've yet to see a Java application for the desktop that I'd like to use.
>They all seem to be either quite a bit sluggish, or non-standard (and
>confusing), or both... After all these years, and with Java being
>essentially free,
>
free ?
essentially free ?
Isn't it so that Sun can start claiming when ever they want too,
that Sun at least has the ability to decides what's in java and what's not ?
Stef

>
>

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@084009 by D. Jay Newman

flavicon
face
> > If you stuck to fairly vanilla Java you could have things working on
> > multiple platforms fairly quickly.
>
> Yes, but...
>
> I've yet to see a Java application for the desktop that I'd like to use.
> They all seem to be either quite a bit sluggish, or non-standard (and
> confusing), or both... After all these years, and with Java being
> essentially free, you'd think there would be more good Java desktop
> applications. I just don't see any.

I think that JBuilder is written in Java and it runs quickly with only
a longer startup time than I think is necessary.

> And I may be mistaken, but it seems to me (from a web user perspective)
> that Java driven web servers show the same performance problems.

I've seen many sites that use JSPs (Java Server Pages) and servlets
and seen them run quickly. I've seen some that run slowly. I suppose
part of it is the skill of the programmers and part is how busy the
servers are.

I've seen the same thing with ASP, PHP, and Perl CGIs.

One of the sites that I created was written in Perl CGIs back when
Mosaic was the browser of choice. This was used by many faculty at
Penn State for 8 years before it was closed down. It ran very quickly.
I think that this has more to do with how I wrote the code rather
than the Perl CGI concept.

> Gerhard
--
D. Jay Newman           ! DCX - it takes off and lands base down,
@spam@jayKILLspamspamsprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@084837 by Rich Mulvey

flavicon
face
On Wed, 4 Aug 2004, Jason S wrote:

> When I started using Java, I wrote a program to print "Hello, World!" on a
> windows PC.  I uploaded the bytecode to the school's Solaris machine and ran
> it there.  I was impressed that the same file ran on both machines for about
> 10 seconds.  Then I remembered I could do the same thingin BASIC.
>
> I know Java has libraries to do a lot more (like GUI stuff), but the
> multiplatform aspect seems a lot less impressive in that context.
>
>

  The problem is that you think you could do the same thing in BASIC, but
you really couldn't, for any significant application.

  Let's take one recent example at my company; We have an image library
consisting of multiple hundreds of terrabytes of AFP files ( AFP is a
proprietary IBM page description language, roughly analagous to Postscript
).  The library is primarily in near-line storage, accessed via a tape
robot.  The storage controller runs on a Solaris system.

  Now, we needed to build a system that would access an Oracle database
to find out where in the library a particular file resided.  Then we
needed to send commands to the robot over TCP/IP to mount the tape, and
migrate the file to disk.  Then the application would open up the file,
which was a minimum of 80-100MB, and extract TIFF images from each file by
going, byte-by-byte, through the AFP file, following chains pointing to
the scan lines in the image, locating various pointers to the next image,
etc.  Once the TIFF file was extracted, we then needed to analyze the
image and locate every single "picture" on the page, determine it's
characteristics - halftone type, location, etc - and store that data into
another database.  Then, once you had done that for every image in the
200-300 page AFP file, start all over with the next file.  And it had to
be fast - blindingly fast.

  So how did we do it?  We wrote *tiny* little Java application that
did everything I just described - from the ground up, using absolutely
nothing but the standard JDK, and the Java Image add-on.  We built and
tested it on Windows.  Then, we took the JAR file - about 600K,
as I recall, and we deployed it to hundreds of machines -
Windows 98,2000,XP,NT4, Mac OSX, and Solaris 2.7-2.9, and ran it.  No
OS-specific functionality at all, running off
exactly the same copy of the JAR file.  No additional testing was required
or done on the other platforms, because we knew "it would just work".  So
instead of taking the weeks it would have required to build a C/C++ app,
for example, that we could trust to work correctly on all those platforms,
for all those OS revisions, it took us 2.5 days to
build and debug in Java.

  See, THAT'S when multi-platform is important, and is why Java is a
really, really good systems for some application domains.  Not because
other languages can be showhorned into printing "Hello World" on multiple
systems.  ;-)  And you don't have to mess around with all the autoconf/
imake/#ifdef junk that is required to get even small C applications
working on multiple systems.

- Rich

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@090122 by Rich Mulvey

flavicon
face
On Thu, 5 Aug 2004, D. Jay Newman wrote:

{Quote hidden}

  It also depends on when you're talking about.  ;-)  Earlier versions of
the Tomcat servlet container - a popular "JSP server", were slow.  Really,
REALLY slow.  And that was because of both the design, and the fact that
people were running them on machines with insufficient memory, etc.  Java
is by any measure, a resource pig compared to most other languages, so if
you have a public website that you expect to get a goodly amount of
traffic, you really need a beefy machine.

  And that's not even considering the variability of programmer
competence, especially for a language that is still evolving.

  It really boils down to picking the right language for the job;  I
spend about half my time developing in Perl, half in Java, and the other
half in C/C++.  ;-)  When it comes to business app development, I use
the following gudielines; For text processing and glue code, Perl is king.
For multiplatform card-walloping apps, Java can't be beat.  For everything
else, there's C.

- Rich

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@090745 by Rich Mulvey

flavicon
face
On Wed, 4 Aug 2004, David VanHorn wrote:

> >
> >These chips are PICs with a bootloader and a Java compiler. If it can be
> >done for Java, it should be able to be done with PHP.
>
>
> I remember when Java was going to replace assembly, on all platforms.

  Well.... except it was really only the PC-magazine-type columnists who
were saying that Java would be all things to all people, for all
applications.  I mean, really, when you come down to it, the only area in
which credible writers totally misssed the mark was thinking that Java was
going to make meaningful inroads into the desktop.

- Rich

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@091744 by D. Jay Newman

flavicon
face
> On Thu, 5 Aug 2004, D. Jay Newman wrote:

>    It also depends on when you're talking about.  ;-)  Earlier versions of
> the Tomcat servlet container - a popular "JSP server", were slow.  Really,
> REALLY slow.  And that was because of both the design, and the fact that

Agreed. It's gotten a lot better.

> people were running them on machines with insufficient memory, etc.  Java
> is by any measure, a resource pig compared to most other languages, so if
> you have a public website that you expect to get a goodly amount of
> traffic, you really need a beefy machine.

It depends on what you compare Java to. C++ can be a resource pig. Garbage
collection is one of the main resource problems that confront *any*
object-oriented language.

>    And that's not even considering the variability of programmer
> competence, especially for a language that is still evolving.

Yes. One study I read showed that it took about 18 months to teach a
competent programmer object-oriented programming.

>    It really boils down to picking the right language for the job;  I
> spend about half my time developing in Perl, half in Java, and the other
> half in C/C++.  ;-)  When it comes to business app development, I use

That sounds about right. :)

> the following gudielines; For text processing and glue code, Perl is king.
> For multiplatform card-walloping apps, Java can't be beat.  For everything
> else, there's C.

I use Perl from text manipulation and system admin stuff when possible.

I use Java to write code for servers and GUI apps and some microcontroller
stuff.

I use assembly for other microcontroller apps.

I use C when I can't be bothered learning the assembly code for a specific
controller.

I use C++, ASP, and other languages when forced to do so by my bosses.

Thankfully right now I'm involved in fixing a rather large Java graphical
application with the worst user interface I've ever seen (well, Eagle
comes close, but MechANEX still wins).

Though this project has literally driven its lead programmer insane and
driven several student programmers away. This is the university life.

I was thrown on the project over a year ago because it needed to be
finished *now*. I think that the first module should be ready for student
use.

The interesting thing is that the original design for the application would
have been wonderful, easier to program, and cross-platform (the *only*
thing that makes this application windows-only is a decree from on high).

This is one of the interesting things about my job: I get thrown on projects
to get them finished when they are in *real* trouble.  :)
--
D. Jay Newman           ! DCX - it takes off and lands base down,
KILLspamjayKILLspamspamsprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@092745 by Wouter van Ooijen

face picon face
> the following gudielines; For text processing and glue
> code, Perl is king.

Yuk! better take Python :)

> > For multiplatform card-walloping apps, Java can't be beat.

Yuk! better take Python :)

> For everything else, there's C.

That I can agree, although C++ also has its place, and don't forget ADA
and a bunch of others, and surely you won't forget Jal?

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@105224 by Alan B. Pearce

face picon face
>I spend about half my time developing in Perl,
>half in Java, and the other half in C/C++.  ;-)

Oh goody, I'm not the only one doing things by halves ;))))))))))))

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\05@180218 by Jason S

flavicon
face
From: "Gerhard Fiedler" <RemoveMElistsTakeThisOuTspamCONNECTIONBRAZIL.COM>
Sent: Thursday, August 05, 2004 5:14 AM


> I've yet to see a Java application for the desktop that I'd like to use.
> They all seem to be either quite a bit sluggish, or non-standard (and
> confusing), or both... After all these years, and with Java being
> essentially free, you'd think there would be more good Java desktop
> applications. I just don't see any.

How about the downloadable client at http://www.brettspielwelt.de?

It's a site that allows people to play some of the most popular eurogames
online.  I'd be very surprised if the European members of the list don't
know what I'm talking about.

Everything is done in Java, and it seems to work well thought it would help
to be able to read German :).  I use the same client software on a desktop
PC and a couple of Mac notebooks.

Jason

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

2004\08\06@184453 by Gerhard Fiedler

picon face
>> I've yet to see a Java application for the desktop that I'd like to use.
>> They all seem to be either quite a bit sluggish, or non-standard (and
>> confusing), or both... After all these years, and with Java being
>> essentially free, you'd think there would be more good Java desktop
>> applications. I just don't see any.
>
> I think that JBuilder is written in Java and it runs quickly with only
> a longer startup time than I think is necessary.

I remember that one; it's been a few years. There's a certain advantage for
a Java IDE to be written in Java, for the language interface.

But any other application that's not a Java IDE or a Java editor or
anything Java development related? You would think that with Linux gaining
steam and Windows still on the market for the foreseeable future, something
like OpenOffice would be an ideal candidate for Java. Yet that seems not to
be coming.

Gerhard

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.

2004\08\06@194307 by Stef Mientki

flavicon
face
Gerhard Fiedler wrote:

{Quote hidden}

But on the other hand Sun just released  "Sun Java Desktop" ;-)
Stef  Mientki

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.

2004\08\07@101255 by Gerhard Fiedler

picon face
>> I've yet to see a Java application for the desktop that I'd like to use.
>> They all seem to be either quite a bit sluggish, or non-standard (and
>> confusing), or both... After all these years, and with Java being
>> essentially free, you'd think there would be more good Java desktop
>> applications. I just don't see any.
>
> How about the downloadable client at http://www.brettspielwelt.de?

I'd have to sign up and stuff... So I guess I won't get to see this so soon
:)

But again, this is not really a standalone desktop application like a word
processor. I'm just wondering with all the advantages people claim for Java
why there are not more of those applications out there. Not applets or
server code, but plain desktop applications.

Gerhard

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email spamBeGonelistservspamBeGonespammitvma.mit.edu with SET PICList DIGEST in the body

2004\08\07@102124 by Gerhard Fiedler

picon face
>>But any other application that's not a Java IDE or a Java editor or
>>anything Java development related? You would think that with Linux gaining
>>steam and Windows still on the market for the foreseeable future, something
>>like OpenOffice would be an ideal candidate for Java. Yet that seems not to
>>be coming.
>>
> But on the other hand Sun just released  "Sun Java Desktop" ;-)

"The desktop components are based on open source and standards and include
the GNOME desktop environment, StarOffice productivity suite, Mozilla
browser, Evolution mail and calendar client, and Java 2 Platform Standard
Edition."

Not much of that seems to be written in Java :)

Gerhard

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email TakeThisOuTlistservEraseMEspamspam_OUTmitvma.mit.edu with SET PICList DIGEST in the body

2004\08\07@102538 by D. Jay Newman

flavicon
face
> But again, this is not really a standalone desktop application like a word
> processor. I'm just wondering with all the advantages people claim for Java
> why there are not more of those applications out there. Not applets or
> server code, but plain desktop applications.
>
> Gerhard

I've spent the last year or so working on a *very* large Java application
(educational software for Mechanical Engineering).

I was thrown on the project (like most times) when things were going
more slowly than anticipated. The project started 5 years ago.

I had no hand in the initial design of either the objects or the
user interface.

Both of them, well, suck.

On the other hand, the application runs very quickly. And this is using
Java 1.2 (because that was what it started with, and they aren't going
to "waste" the month or so to convert it to Java 1.4).

While the application could use a total rewrite to clean up some
rather skanky code, it works fast and provides the proper results.

This is a *huge* application. It has seven modules that the students
can create simulated experiments and see the results and match them up
against similar data from real experiments. I call this "The Project
That Eats People" because the lead programmer left it because he went
insane, and grad students stay an average of 1 semester working on
this app.

Now, the *first* design for the program would have made it much more
useful and it would be *done* a couple of years ago.
--
D. Jay Newman           ! DCX - it takes off and lands base down,
RemoveMEjayspamTakeThisOuTsprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email listservEraseMEspam.....mitvma.mit.edu with SET PICList DIGEST in the body

2004\08\07@141625 by Jason S

flavicon
face
Actually, there is a webbased client so you don't need to download the
software, and if you don't care about protecting a nickname, you can log in
with any unused name and no password -- just make up a random string of
letters and chances are it is available.

One of the nice features about Java is its native support for RPC.  It would
be a lot harder to code the network functionality of BSW in C.  I'm not
really a fan of Java, but it has its uses.

From: "Gerhard Fiedler" <EraseMElistsspamCONNECTIONBRAZIL.COM>
Sent: Saturday, August 07, 2004 7:12 AM

> But again, this is not really a standalone desktop application like a word
> processor. I'm just wondering with all the advantages people claim for
Java
> why there are not more of those applications out there. Not applets or
> server code, but plain desktop applications.

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email RemoveMElistservEraseMEspamEraseMEmitvma.mit.edu with SET PICList DIGEST in the body

2004\08\07@183433 by William Chops Westfield

face picon face
On Aug 7, 2004, at 7:20 AM, Gerhard Fiedler wrote:

> the GNOME desktop environment, StarOffice productivity suite, Mozilla
> browser, Evolution mail and calendar client, and Java 2 Platform
> Standard
> Edition."
>
> Not much of that seems to be written in Java :)
>
My impression was that recent versions of staroffice and mozilla
contained quite a bit of Java code, in their bid for more
platform-independence.  Wasn't that one of the things leading to
complains of slowness?

Like pascal and basic, there's no particular reason that java programs
can't be compiled all the way to machine code instead of byte codes, is
there?  Machine-independent binaries are nice, but for major
applications they aren't nearly as important as machine-independent
source code...

BillW

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email RemoveMElistservspam_OUTspamKILLspammitvma.mit.edu with SET PICList DIGEST in the body

2004\08\07@231837 by James Caska

flavicon
face
>Like pascal and basic, there's no particular reason that java programs
can't be
>compiled all the way to machine code instead of byte codes, is there?
There is something of a reason -- java is far richer conceptually than C for
generating native equivalent code.. But it can and has been done. Most java
JVM's have just-in-time technology these days which does this for you
transparently. With java you get machine independent source ( java source )
AND machine independet binary ( class files ) AND machine dependent
performance by whatever technology is available to convert the class files
to machine code.. Even for the PIC ( http://www.muvium.com ) which for those who
attendend 816-MUV at MASTERS this year would have seen how we get 'C'
performance from Java.. At least for the PIC.

There are an enourmous number of applications written in java but GUI's
don't seem to be it's speciality and one of the reasons for this is that
Java tends to be a bit more generic.. The reason java is a bit slower is not
because of the runtime performance of the JVM but because the libraries it
uses tend to be designed more generically ie for ease of re-use rather than
for speed optimisation. What I mean is that it is algorithmic rather than
JVM execution speed.
In particular GUI's are difficult to match custom code ie say a DirectX
engine or something working very tightly with a particular machine
configuration with a generic transportable GUI library. For a start anyone
thinking about building a commercial desktop application doesn't first think
'linux' simply because 90% of the market still uses windows. So if you
choose windows then Java probably isn't the best tool for the GUI.

Hence the result is pretty obvious -- commercial desktop applications tend
to get written for the Windows platform using whichever windows tool suits
it best. Java GUI app's tend to be smaller utility applications that are
more transportable. Not because java is not a good language or it's slow or
something like this -- simply because it's about using the appropriate tool
for the appropriate job.

It's not that Java is not a good tool for building applications -- Eclipse
for example is a very good tool for all sorts of things -- http://www.eclipse.org
-- but yes it tends to focus on development but it's plugin extensibility
for example is a very good reason to use java. In fact again if you attended
816-MUV you would have used Eclipse to run emulated PIC hardware and write
java applications for the PIC all running from the muvium java plugin for
eclipse which puts our development kit integrated in the Elcipse environment
for debugging and launching emulated and real hardware. Plus because it's
java this IDE can run on linux too -- so suddenly you hava a real
development environment for the PIC that runs on Linux or whatever else runs
Java and Eclipse ( just about everything )

D.Jay Newman wrote:
>This is a *huge* application. It has seven modules that the students
>can create simulated experiments and see the results and match them
>up against similar data from real experiments.
This is a hint of one very powerful reason to use java and we take advatage
of this in our tools. Where Java running on your PC is the same as the Java
running on say a PIC so you can use your PC to emulate and debug your Java
programs. We have tools ( from http://www.virtualbreadboard.com ) to wrap up this
in a real-time framework ( called openVBB -- java ) which allow us to
develop and run real-time emulations of whole electronic systems and
integrate them with real-time systems under control via java adaptors -- eg
robots can be a system under control. Like Jay's system we are working with
a University project and demonstrated this year a system for RoboCup Jnr
where the development environment is a java soccer match physics emulation
running java robots driven by muvium powered PIC's running the exact same
java robot code in the emulator as the real-robot allowing emulated to match
up with the real. This for example allows in this case for the real-robot to
be developed for or evalulated 'offline' or by students who don't own a
real-robot and then to put the code in the real-thing for 'competition' day.


Other applications could be for you to send your customer a software
evaluation of your hardware for say user interface sign-off or functional
specification agreement or perhaps you want to get started developing before
you complete the hardware so you did with 'Virtual Hardware' -- we call this
VWARE.. Or you don't have all the parts yet but you want to evaluate
different designs.. Well I could keep going..
So.. Java has its uses ;-)

Regards,

James Caska
http://www.muvium.com
uVM - 'Java Bred for Embedded'



{Original Message removed}

2004\08\08@085210 by D. Jay Newman

flavicon
face
> In particular GUI's are difficult to match custom code ie say a DirectX
> engine or something working very tightly with a particular machine
> configuration with a generic transportable GUI library. For a start anyone
> thinking about building a commercial desktop application doesn't first think
> 'linux' simply because 90% of the market still uses windows. So if you
> choose windows then Java probably isn't the best tool for the GUI.

Hmmm. I think I have to disagree with you there, James. It is possible to
write tight and fast GUI code in Java. It's just that you have to know
how to do it.

And I think it's easier than C on Windows. They both take skilled
programmers to get the best out of the system. Yes, it might be possible
to get slightly better performance from a native system, but the
performance increase is small if the Java is coded correctly.

> it best. Java GUI app's tend to be smaller utility applications that are
> more transportable. Not because java is not a good language or it's slow or
> something like this -- simply because it's about using the appropriate tool
> for the appropriate job.

Or because the project manager says "Java".  :)

Of course, I still prefer Java for networking code. I can write a server
in Java *much* faster than I can in C (mainly because I'm better at
Java than C) and this server will be cross-platform.
--
D. Jay Newman           ! DCX - it takes off and lands base down,
RemoveMEjayTakeThisOuTspamspamsprucegrove.com     !       as God and Robert Heinlein intended.
http://enerd.ws/robots/ !

--
http://www.piclist.com hint: To leave the PICList
EraseMEpiclist-unsubscribe-requestspamspamspamBeGonemitvma.mit.edu

2004\08\08@093852 by Wouter van Ooijen

face picon face
> Of course, I still prefer Java for networking code. I can
> write a server
> in Java *much* faster than I can in C (mainly because I'm better at
> Java than C) and this server will be cross-platform.

But IMHO C-Java is a silly comparison, especially if you have a
convenient set of Java libraries and no compareable C libraries. Java
should be pitched against other cross-platform library-rich languages
like Python, an to a lesser extent, Tcl and Perl, and maybe Eiffel.

C could be piched against other native-code-generating languages without
garbage collection, for instance Ada.

For certain stateless applications all these languages will loose to a
functional language like Haskell or Miranda.

There are numerous other niches where a particular language or class of
languages (or a particular library set, like Tk) will outperform the
competition. Even then it depends on things like the size of the
application whether it is a good idea to dump the tools you are familiar
with in favour of the 'optimal' tool for the job.

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: To leave the PICList
RemoveMEpiclist-unsubscribe-requestKILLspamspammitvma.mit.edu

2004\08\08@134240 by Gerhard Fiedler

picon face
> Hence the result is pretty obvious -- commercial desktop applications tend
> to get written for the Windows platform using whichever windows tool suits
> it best. Java GUI app's tend to be smaller utility applications that are
> more transportable. Not because java is not a good language or it's slow or
> something like this -- simply because it's about using the appropriate tool
> for the appropriate job.

I had a nice little tool once, written by a friend, in Java. Worked ok, but
whenever I wanted to run it, I had to load the JVM. For running it often,
that takes to long. For having it loaded all the time, the JVM takes up
quite a chunk of memory for just a small little tool. This of course
doesn't really come to the mind of a Java developer who has some kind of
JVM loaded all the time anyway.

I recently started to look into Python, and it seems that it is better
suited for those smaller utility applications that need a little more than
what would be convenient in a shell script.

Gerhard

--
http://www.piclist.com hint: To leave the PICList
piclist-unsubscribe-requestSTOPspamspamspam_OUTmitvma.mit.edu

2004\08\08@135110 by Gerhard Fiedler

picon face
>> But again, this is not really a standalone desktop application like a word
>> processor. I'm just wondering with all the advantages people claim for Java
>> why there are not more of those applications out there. Not applets or
>> server code, but plain desktop applications.

> I've spent the last year or so working on a *very* large Java application
> (educational software for Mechanical Engineering).

> On the other hand, the application runs very quickly.

I don't say it's not possible -- I've participated in a project that was a
success. (And that was a decent-sized desktop application.) I just don't
see it coming in any significant numbers on the desktop, and I wonder why
that is. The only area where desktop apps in Java seem to be available in
significant numbers is development tools for (mainly) Java development.

Now I'm not a Java developer with heart and soul, as many others are.
Within the paradigm "the best tool for the job", Java definitely has its
places. But according to the majority of developers, as measured by the
available applications, this doesn't seem to be the desktop -- and
seemingly not even the cross-platform desktop. (Or Java developers don't
like to program desktop applications... :)

Gerhard

--
http://www.piclist.com hint: To leave the PICList
spamBeGonepiclist-unsubscribe-requestSTOPspamspamEraseMEmitvma.mit.edu

2004\08\08@135111 by Gerhard Fiedler

picon face
> Actually, there is a webbased client so you don't need to download the
> software, and if you don't care about protecting a nickname, you can log in
> with any unused name and no password -- just make up a random string of
> letters and chances are it is available.

I did that, but it didn't allow me to see any game, just the lists of
available games. Maybe I don't get it, but I wouldn't want to spend a whole
lot of time on that. I'm no gamer... :)

--
http://www.piclist.com hint: To leave the PICList
KILLspampiclist-unsubscribe-requestspamBeGonespammitvma.mit.edu

More... (looser matching)
- Last day of these posts
- In 2004 , 2005 only
- Today
- New search...