Unoffical empeg BBS

Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic
Repairs: Repairs

Page 1 of 3 1 2 3 >
Topic Options
#75517 - 27/02/2002 03:01 So I want to progam for my Empeg...
johnmcd3
enthusiast

Registered: 19/04/2001
Posts: 369
Loc: Seattle, WA (formerly Houston,...
Ok, so I want to learn to write programs that run on the empeg. I'm looking for some advice and some info but I'm actually not really where to start with these questions, so I'll just babble a bit.

First of all, I'm a freshman in college on my way to becoming a CS/EE double major. The comp sci course I'm in the middle of right now is described as "An overview of advanced data structures and analysis of algorithms, data abstraction and abstract data types, object-oriented programming, proofs of correctness, complexity, and computability." Basically we're learning about stuff like inheritance and binary trees and the like. Basic C++.

The main hurdle I have is that although I can write some pretty good C++ code I have no idea how to interface with the empeg. Besides the fact that we code and compile remotely on UNIX machines (for comp sci courses), I have zero experience with Linux and no experience with large projects. Is there any FAQ/instructions that would help me compile a short hello world type program for the empeg? If I am going to get serious about this I'm going to need a Linux partition on my hard drive, huh? (I should probably do this just to learn about Linux.)

What about instructions to interface with the hijack menus (This can wait 'till later) Where is the source to hijack? All I see is the patch file which has all the crazy diff-generated character stuff in it.

(By the way why does it seem like there is c stuff lurking around (printfs, printks, malloc, memcpy, etc? Isn't most of the stuff written in C++? Am I going to need to learn C?)

At this point everything is a little over my head. But what should I do now to better prepare myself to do cool stuff in the future? My course next fall is described as "Techniques for design and construction of reliable, maintainable and useful software systems. Programming paradigms and tools for medium to large projects: revision control, UNIX tools, performance analysis, GUI, software engineering, testing, documentation." That should give me a little more experience with this stuff.

I don't really have too much time with school and all (I'm a Warcraft III beta tester, different topic), but I find this stuff fascinating and want to get involved at some point, even if its later. Thanks for ya'lls help,

John
_________________________
1998 BMW ///M3 30 GB Mk2a, Tuner, and 10 GB backup

Top
#75518 - 27/02/2002 04:33 Re: So I want to progam for my Empeg... [Re: johnmcd3]
Roger
carpal tunnel

Registered: 18/01/2000
Posts: 5683
Loc: London, UK
Isn't most of the stuff written in C++?

The player is written in C++, the kernel (to which you've got the source) is written in C.

The source for Hijack is the Linux kernel source, with those patches applied. Mark distributes just the patches, because they're smaller, and getting hold of the kernel source is easy.

As far as developing for the empeg, check out the resources at riocar.org

_________________________
-- roger

Top
#75519 - 27/02/2002 06:18 Re: So I want to progam for my Empeg... [Re: johnmcd3]
genixia
Carpal Tunnel

Registered: 08/02/2002
Posts: 3411
It seems strange to me that you are studying C++ rather than C in a CompSci/EE double major. You will find that most embedded programming is still done in C for various reasons.

Firstly, C is more standardized than C++, which increases the odds that the compiler for your chosen target archhitecture works correctly.
Secondly, C generally produces more predictably sized code which is better for embedded systems.
Thirdly, C generally produces code with more predictable latencies.
There are other reasons too, but these are the 3 biggies.

The linux kernel is still written in C, so if you want to get into linux kernel hacking you will need to learn C.
_________________________
Mk2a 60GB Blue. Serial 030102962 sig.mp3: File Format not Valid.

Top
#75520 - 27/02/2002 13:57 Re: So I want to progam for my Empeg... [Re: genixia]
johnmcd3
enthusiast

Registered: 19/04/2001
Posts: 369
Loc: Seattle, WA (formerly Houston,...
At the introductory levels, EE and CS don't overlap as much and the compsci major (at Duke) is based in C++ (although you can start it in java, kind of). So thats why I'm taking C++.

I think I'm going to partition my hard disk and install linux. It will be a good learning expirience and I can program locally instead of on the university's servers. I'm thinking I'll go with Red Hat (since I'm a beginner) unless it would be better to go w/ debian because that's what the empeg uses.

At this point I'll leave the the kernal hacking to Mark and others and I'll write in what I know, C++. I'll probably learn C in my oh-so-extensive spare time later. Any other insight is appreciated.
_________________________
1998 BMW ///M3 30 GB Mk2a, Tuner, and 10 GB backup

Top
#75521 - 27/02/2002 16:08 Re: So I want to progam for my Empeg... [Re: johnmcd3]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
I have absolutely no idea, why comp-sci courses have switched to java as the introductory language.. Other than making it easier to teach non-computer people how to program, it glosses over some important things about computer programming, namely the computer. The problem that most universities have, is that they want to teach all of the design, and none of the implementation.. So 4 years of java gives you all of the design (basic loops, data structures, algorithms, etc) but ignores teaching how programs actually work. I was fortunate and took courses at all levels, as well as different types of languages, so I feel I atleast know why some languages work better than others..

What I find funny, is that when I took a 1 credit java course, I found it easy.. now some friends of mine still in school are taking the 1 hour C course for java programmers, and are having a tough time..

Moral of the story, stick with C++.. learning C from C++ is easy.. learning Java is easy.. going the other way is sometimes tough..

Top
#75522 - 27/02/2002 20:10 Re: So I want to progam for my Empeg... [Re: Yang]
jheathco
enthusiast

Registered: 21/12/2001
Posts: 326
Loc: Mission Viejo, California
Yang, totally agree with that. Luckily I'm a self-taught C/C++ guy. Right now at Cal Poly SLO, they are also using Java for the introductory programming classes. One major thing I'd like to add that Java handles for you, memory allocation. Memory allocation was one of the, if not the hardest thing for me to grasp when I was learning C. All allocation is just skipped over in Java because you don't need it...
_________________________
John Heathco - 30gig MKIIa w/ tuner module

Top
#75523 - 27/02/2002 22:41 Re: So I want to progam for my Empeg... [Re: johnmcd3]
Gary
stranger

Registered: 03/02/2002
Posts: 25
Others have answered many of your questions, so I just want to answer the general "what should I do to prepare for cool stuff in the future?" question. For everyone: knowing what you know now, what advice would you give yourself as a beginner?

Here are my thoughts, as someone who was a TA in CS courses for several years while in grad school.

1. As a beginner in a new area, we often think that if we could just get some help getting started, we could then continue on our own. But the problem is that that's just not true because that feeling _never_ goes away. There's always so much more to learn! Once you get good at the beginning stuff, you're only then able to appreciate how much is out there to learn. The more you advance, the more you can do. At any level, you're a beginner in the new world your skills enable.

So a better approach is to forget about trying to get over that "clueless beginner" feeling. Instead, realize that you already have a lot of usable knowledge--you just have to figure out how to apply it. And more importantly, how to find challenges to push against and grow.

2. So where is the knowledge of empeg? Three places: the heads of the people you can ask, the newsgroups and FAQs, and the code itself. Beginners tend to go in that order: ask first, study code later. But that's the frustrating and slow path that puts others in charge of your progress. Experts go in the reverse order. First study the code, then search newsgroups and faqs. Only if you're still stuck do you make yourself dependent on others.

Experts can easily tell when someone is asking a good question and when the asker is too lazy to look in the faqs, or worse, the asker is just trying to get someone to do their homework for them. Experts are good people to make friends with; having been through the beginner stages, they're usually generous with help. You make friends with them by not wasting their time with questions that you would know if you made a little effort before asking.

It takes great effort to write documentation. I am, and I know others are, quite grateful to Tony and Loren for making the effort to write faqs for empeg and Hijack. So much of what you need to get started is already there in the faqs.

Even with their great efforts, though, it's hard to keep up with a whole community of people contributing new code and projects. So the ultimate source of what you need is in the source code itself. By studying it, you'll learn not only how empeg and Hijack work, but you'll see great examples of how professional code is written. It may be intimidating at first, but that's part of learning--don't fight it. (Remember, you're always a beginner; there's always something you don't understand that feels intimidating.) So dive into the source code. Wander, skip, puzzle, play, imitate, change, fool around. I promise it will gradually yield to your efforts.

3. Finally, be careful to be too focused on looking for specific answers in class. Your coursework will try to teach you many things that seem irrelevant to you. But I think many us wish we had paid closer attention the first time around so we wouldn't have to relearn things later. The value of learning everything you can is that when you are confronted by a challenge, you'll have a great toolbox to apply.

This is a pretty friendly community--lot's of people will enjoy helping you and appreciate your contributions.

Let us know how we can help.

Gary

Top
#75524 - 27/02/2002 23:09 Re: So I want to progam for my Empeg... [Re: Gary]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
Heh.. The comment about always feeling like a beginner is definately true.. It only goes away when you stop thinking that you ought to be able to do everything, and instead focus on things that are achievable with the skills you have now.. I've had several projects in mind that I know I can't do right now, but I've decided to simply work on projects closer to reality and when the time comes when I have the necessary skills, I'll work on those projects I've been thinking about..

Top
#75525 - 28/02/2002 13:39 Re: So I want to progam for my Empeg... [Re: Yang]
eternalsun
Pooh-Bah

Registered: 09/09/1999
Posts: 1721
Loc: San Jose, CA
How is Java an "easy" language? The depth and breadth of detail depends entirely on the course material. I think Java is an excellent language to explore the practice of OO, loops, data structures, algorithms are secondary to that.

When I was going to Umich, a Comp engineering courseload might have included Java, but in other classes they had me coding compilers, tcp ip stacks, hand coding assembler, designing a CPU and hand coding it, adapting common solutions into parallel processing algorithms, writing games, etc. You can't shoot down the whole curriculum on the basis of one course. If the purpose of the course is only to teach introductory loops and structures in a safe environment, so be it. There will be other courses to deconstruct and understand the underlying nature of the machine. If the course is impressing OO design and practice early, then even better.

I remember back in the day when the professor adamantly insisted that it was not possible to code a fibbinaci's sequence algorithm in less than 11 assembler instructions. Most people submitted solutions of 15 to 40 instructions. I was happy enough to get it down to the "optimum" 11 instructions, when a lateral thinking fellow next to me "discovered" it was possible to for the program to overwrite its own instructions, and ended up submitting a solution in 7 instructions. It was pretty amazing then, but what pressing application would that have these days? I think going from a lower level to higher level languages can potentially carry over bad habits more so than going back the other way.

Calvin

Top
#75526 - 28/02/2002 15:04 Re: So I want to progam for my Empeg... [Re: eternalsun]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
I didn't say Java was an easy language.. I said it was easier to teach to non-programmers.. when I took my java course, I found it easy, but we never went any deeper than UI widgets and some list stuff.. Java is easier than C because you don't have to do %90 of the hard code which you are required to write when taking C courses. Teaching OO concepts is one thing, but when your education of b-trees is 'create btree foo' 'foo.addobject(bar)', what's the point unless you are going to be a professional Java programmer the rest of your life?

Having a intro to programming course for a comp-sci degree use Java is one thing, having all computer programming courses use Java is annother.. I'm not against Java, I'm just against using Java for things it has no business doing (like graphical applications.. )

My assembler prof had the same sort of experience.. we had to write a program to solve some magic number problem..
he said the limit was like 27 instructions.. someone did it in like 11.. (they kinda cheated, figured out the pattern and created a hash of the different solutions)

Top
#75527 - 28/02/2002 17:18 Re: So I want to progam for my Empeg... [Re: Yang]
eternalsun
Pooh-Bah

Registered: 09/09/1999
Posts: 1721
Loc: San Jose, CA
Going through my GoF Design Patterns a while back had me arrive at the relevation that all the underlying complexity is not necessary. Not everyone needs to have atomic comprehension of the underlying details in order to architect and construct. The design patterned future will strike a proper dichotomy between the design-patterned architect and the computer scientist and engineer.

I think someday, design patterns will formulize into architectural languages of the sort where you call forth your observers and factories and flywheels and assemble them into place at a high level. Does an architect need to know the metalurgical analysis proving the steel beams or the rational behind the heights of door frames to architect well? Not really.

I think in the earlier days of Microsoft even, the definition of a good computer programmer was a person who can write a quicksort in the smallest, tightest, cleverest and most succinct piece of C code. When people applied for a job at Microsoft, the person who wrote multi-line commented sorts was penalized, and the person who leveraged the system qsort() function was looked down upon, and the guy who wrote something clever in 3 lines was hired. Interestingly, the emphasis to reinvent the wheel, but more clever each time led to products universally accepted as bug ridden and terrible. I think in the recent years with the adoption of high level patterns we're starting to see fruits of that in a lot of their software.

I think the discipline of software engineering, in order to make the design/architectural leap forward has to stop penalizing the lack of algorithmic knowledge of every little thing that spins beneath the surface, and reward the big-picture thinkers. Which is not to say that fundamental knowledge is not necessary or important -- just not a critical requirement.

The guy who wrote up the solution for 7 instructions versus the "optimum" 11, the code does not resemble the proper solution in any way. It used some kind of oscillating counter that doubled as a way to calculate the sequence and as a way to modify the running code itself. He explained it to me with an analogy of climbing a ladder. Something like that.

Calvin

Top
#75528 - 28/02/2002 20:36 Re: So I want to progam for my Empeg... [Re: eternalsun]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
Who's going to write this high-level language, and in what language would it be written in?

Top
#75529 - 28/02/2002 21:05 Re: So I want to progam for my Empeg... [Re: Yang]
Sipho
member

Registered: 08/01/2002
Posts: 103
Loc: Utah & Silicon Valley
Bootstrap: the first compiler will be written in the new language and self-compile . That is sort of how the first Pascal compiler was done.

As to the design of the new language any fool can design a programming language and most have

Top
#75530 - 01/03/2002 18:07 Re: So I want to progam for my Empeg... [Re: Yang]
eternalsun
Pooh-Bah

Registered: 09/09/1999
Posts: 1721
Loc: San Jose, CA
Don't get me wrong, there's a need for such people, just as there is a need for special operations soldiers in the military. But not everyone needs to be special ops to have a military.

If you saddle the requirements on *everyone* then the discipline as a whole will not advance. If you partition by specialty, then you have a chance! An architect, perhaps even a superb architect (i'm thinking buildings, not software) does not have to have mastery over every little thing, like the size of a doorknob, the location of handles, the types of fire extinguishers, or whatever to make a great building. Clearly somebody designed a door with the handle in a certain place, and that door will be instantiated all over the building. Clearly the design of that door is pretty standard, and could stand to be improved time and money willing, but the *architect* wouldn't benefit from this knowledge, much.

Calvin

Top
#75531 - 01/03/2002 19:40 Re: So I want to progam for my Empeg... [Re: eternalsun]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
Anyone who thinks that the a university undergraduate program give you mastery of the skills learned there is sorely mistaken. It's to give you the skills needed to learn from, and without a broad base to learn from, you get pigeon holed into an area of programming that might not be best suited for your skills. Personally I'm not a low-level programmer, in fact, I prefer Perl over any other language.. That doesn't make the skills I learned from programming assembler useless.. I didn't say that everyone should be a master of every language did I? I just said that as an undergraduate, multiple levels of knowledge are needed.. To better understand the weaknesses of languages, you need to know what differences there are..

I fear the people who say Java is the best programming language out there, because they are showing that they know jack about programming languages.. No one language is the best, they are only the best for specific purposes.. If your architect person claims that everything should be made out of concrete, would you believe them? They might claim that if that's the only material they were taught about.. Lets hope that architects are taught about wood and metal too.. perhaps how laminated wood beams are constructed, so they know they can use them to make large open areas where solid wood beams aren't strong enough..

Top
#75532 - 01/03/2002 20:01 Re: So I want to progam for my Empeg... [Re: johnmcd3]
johnmcd3
enthusiast

Registered: 19/04/2001
Posts: 369
Loc: Seattle, WA (formerly Houston,...
I the last two days I've made a little progress. I read tons of Linux documentation and then installed Red Hat in a dual boot configuartation with XP (debian can wait for my next impulsive urge to do something crazy). I spent a few hours getting use to it, configuring the trivial little things, installing things I needed, etc. Have used Unix and Solaris before, I now feel reasonable comfortable with it. I set up some makefiles and compiled some of my old code to see how everything works-- no big surprises. The next major goals are: figure out how to compile my own kernel, then install the arm toolchain and see if I can get my own empeg kernel working. I'll let ya'll know how it goes...

John
_________________________
1998 BMW ///M3 30 GB Mk2a, Tuner, and 10 GB backup

Top
#75533 - 01/03/2002 20:15 Re: So I want to progam for my Empeg... [Re: Gary]
johnmcd3
enthusiast

Registered: 19/04/2001
Posts: 369
Loc: Seattle, WA (formerly Houston,...
Hey Gary,

Thanks for all the advice, it's appreciated. In the vein of what you said I introduced myself to a whole new unknown in the form of Linux yesterday. Hopefully it's all part of some greater knowledge that will allow me to do some cool stuff later. I'm not exactly looking for specific answers in my CPS classes-- its all critically important stuff anyway. This specific interest grew out of me wanting to do some cool stuff that I can benefit from now, rather than waiting for my knowledge to mature over the next several years. I think it will be a worthwile pursuit.

- John
_________________________
1998 BMW ///M3 30 GB Mk2a, Tuner, and 10 GB backup

Top
#75534 - 04/03/2002 16:59 Re: So I want to progam for my Empeg... [Re: Yang]
eternalsun
Pooh-Bah

Registered: 09/09/1999
Posts: 1721
Loc: San Jose, CA
Good point! Not everyone can be multilingual, but basic knowledge of language constructs from language to language is helpful. We've all run into the Java monotheists or the C monothesists who though technically talented just can't comprehend a world beyond that.

Calvin

Top
#75535 - 04/03/2002 17:33 Re: So I want to progam for my Empeg... [Re: eternalsun]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
And, to expand on that point slightly, there are (probably more) people who know nothing other than procedural languages, and never consider functional or object-oriented languages (or some permutation thereof). And these differences are likely to be bigger stumbling blocks, because the differences between those sets of languages tend to be more of the ``syntactic sugar'' sort than any real functional difference.
_________________________
Bitt Faulk

Top
#75536 - 04/03/2002 17:46 Re: So I want to progam for my Empeg... [Re: wfaulk]
TedP
member

Registered: 11/01/2002
Posts: 171
Loc: South Bay, CA: USA
all you guys who do your indtroductory CS in C, C++, or Java, consider yourself lucky: I had to do mine in SCHEME (a dialect of LISP). When was the last time that one was useful? (except for writing a EMACS macro).

Top
#75537 - 04/03/2002 17:52 Re: So I want to progam for my Empeg... [Re: TedP]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
Scheme will teach you more about computer science than all of the rest of those languages put together. It's a beautiful language. (I taught some beginning programming labs in both Pascal, C, and C++. Pascal was wonderful. C was okay, execpt for the points you had to gloss over: Q:``Why do I have to put an ampersand in front of a string argument?'' A:``You'll find out next semester.'' C++ was awful. It's such a hodgepodge of language that it's hard to find any computer science in it. Perl would be even worse.)

As to its real-world application, there's scsh, if you're inclined towards sysadmin stuff. There's really no reason you couldn't write any application in it. It'd just be more difficult than usual to attach to external libraries, though far from impossible.


Edited by wfaulk (04/03/2002 17:55)
_________________________
Bitt Faulk

Top
#75538 - 04/03/2002 18:12 Re: So I want to progam for my Empeg... [Re: TedP]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
I learned some SCHEME when I took my Programming Theory class.. We used it to interpret and perform programs written in SCHEME.. Kinda pointless, but we learned how Tail Recursion and other concepts worked.. (man.. I can still remember car and cdr)

Top
#75539 - 04/03/2002 18:17 Re: So I want to progam for my Empeg... [Re: TedP]
eternalsun
Pooh-Bah

Registered: 09/09/1999
Posts: 1721
Loc: San Jose, CA
My first official "introductary" programming courses were in Fortran! I remember when you had to hit return around the 78th spacing!!!!!! :-D

Calvin

Top
#75540 - 04/03/2002 18:49 Re: So I want to progam for my Empeg... [Re: Yang]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
(man.. I can still remember car and cdr)

Me too... I burn my MP3's to cdr, and I also put them on my Empeg so I can listen to them in my car.

I never understood Lisp when they taught it in my classes. I mean I had already learned all of the basic Comp Sci concepts in other more practical languages so it seemed really academic to me. Although I have no problem messing with the Lisp stuff that Emacs uses. It's just not a very interesting or practical language.
_________________________
- Tony C
my empeg stuff

Top
#75541 - 04/03/2002 18:59 Re: So I want to progam for my Empeg... [Re: tonyc]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
It's only interesting to people who teach with it aparently.. Though I think they're working on a plugin for Visual Studio.NET, so someday you will be able to use it in other programs..

Top
#75542 - 04/03/2002 19:06 Re: So I want to progam for my Empeg... [Re: Yang]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
Teeheheehe.. A marriage of a language loved by computer scientists, and a company that has lost touch with all good programming practices... Gotta love it!
_________________________
- Tony C
my empeg stuff

Top
#75543 - 04/03/2002 19:13 Re: So I want to progam for my Empeg... [Re: TedP]
mlord
carpal tunnel

Registered: 29/08/2000
Posts: 14496
Loc: Canada
..and when I was a just a young lad..

But seriously, anyone who looks at my code just nods their head when I tell them my first computer language was APL. Scarred for life.

-ml

Top
#75544 - 04/03/2002 20:23 Re: So I want to progam for my Empeg... [Re: eternalsun]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
Don't you mean that you had to change cards?
_________________________
Bitt Faulk

Top
#75545 - 04/03/2002 20:28 Re: So I want to progam for my Empeg... [Re: Yang]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
> [lisp/scheme is] only interesting to people who teach with it aparently..

No, it's a pretty important language for Artificial Intelligence research. I had to implement my AI project in lisp. Quite funny, actually -- I didn't do any implementation, but still got about a B on the project based on my documentation of the non-existant code.

Top
#75546 - 04/03/2002 21:48 Re: So I want to progam for my Empeg... [Re: wfaulk]
TheAmigo
enthusiast

Registered: 14/09/2000
Posts: 363
I remember my first C++ class. I already knew C, but I didn't understand what OO was. It wasn't until I learned to program in MOO when it finally clicked as to what OO was. It made a huge difference to be able to create virtual objects to play with.
_________________________
--The Amigo

Top
#75547 - 05/03/2002 00:08 Re: So I want to progam for my Empeg... [Re: canuckInOR]
Yang
addict

Registered: 14/01/2002
Posts: 443
Loc: Raleigh, NC
Umm... Your prof taught you Lisp, but you didn't find it interesting enough to actually implement your project in it?

Top
#75548 - 05/03/2002 00:12 Re: So I want to progam for my Empeg... [Re: Yang]
lectric
pooh-bah

Registered: 20/01/2002
Posts: 2085
Loc: New Orleans, LA
Crap.. At Auburn, I had to leard ADA. Talk about useless... The professer even said it was a "useless, dead language and I don't even know why we teach it, other than we already have the books." Yikes. (Fortran was the intro class, btw.)

Top
#75549 - 05/03/2002 00:28 Re: So I want to progam for my Empeg... [Re: lectric]
jheathco
enthusiast

Registered: 21/12/2001
Posts: 326
Loc: Mission Viejo, California
Yeah? At least you don't have to learn a language called ISETL (Interactive Set Language) just for discrete math. I'm glad a get to clutter my precious brain space with a language I'll use for 3 months of my life...
_________________________
John Heathco - 30gig MKIIa w/ tuner module

Top
#75550 - 05/03/2002 00:36 Re: So I want to progam for my Empeg... [Re: jheathco]
lectric
pooh-bah

Registered: 20/01/2002
Posts: 2085
Loc: New Orleans, LA
Good grief, that IS worthless ;8^)

Top
#75551 - 05/03/2002 02:28 Re: So I want to progam for my Empeg... [Re: TedP]
jane
enthusiast

Registered: 10/10/2000
Posts: 350
Loc: Copenhagen SW, Denmark
So... adding my "history" :-)
I started programminig in MBasic with the "NCRgraf" graphics
library. The next step was x86 assembly written in "debug" and called from GWBasic.
Then I started doing Turbo Pascal.
The university introductory course was SIMULA.
And then some university courses involving C, 68k assembly and "ML" (Meta Language) as well as a lot of other projects in different programming languages.

Marius (Escort Cab + Mark II)

Top
#75552 - 05/03/2002 02:38 Re: So I want to progam for my Empeg... [Re: lectric]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
I'd tend to argue that no language is worthless. First, a real programmer should be able to pick up a new language in a few days worth of study. Second, almost any language is bound to have some application worth learning. You might find in the future that some feature of a language you previously found obscure shines some light on a problem, and allows you to solve it in a more efficient manner.

Just my thoughts, though. You might find things to be different if pointed at Intercal or Brainfuck or Befunge.
_________________________
Bitt Faulk

Top
#75553 - 05/03/2002 03:30 Re: So I want to progam for my Empeg... [Re: wfaulk]
dclesse
member

Registered: 31/01/2001
Posts: 112
Loc: Belgium/Luxembourg
Check out this site, it's about programing languages. Almost all of them are listed. Some are really amazing, check the one called brainf*ck! For each language a helloworld source is provided.
http://www2.latech.edu/~acm/HelloWorld.shtml

enjoy!
_________________________
David Clesse Belgium/Lux [blue]Mk2[/blue]-36g-tuner-stick-aug00 [orange]Riocar[/orange]-60g-jan02

Top
#75554 - 05/03/2002 04:01 Re: So I want to progam for my Empeg... [Re: lectric]
rob
carpal tunnel

Registered: 21/05/1999
Posts: 5335
Loc: Cambridge UK
At Auburn, I had to leard ADA. Talk about useless

..unless you happen to be creating a bomb proof (pardon the pun) real time system for the military, in which case ADA is a) Useful and b) Extremely bloody lucrative! It was a compulsory module in my Real Time Systems degree, mainly because 25% of the graduates from that course went on to write nuclear bomb simulators and so forth for the MoD.

Other reasons for teaching ADA that your professor might have considered compelling include:

a) Demonstration of a P-Code compilation system
b) Extremely strongly typed syntax - I mean NO slacking off
c) Thoroughly defined concurrency model

Personally I hated it - too many words!

Rob

Top
#75555 - 05/03/2002 04:30 Re: So I want to progam for my Empeg... [Re: mlord]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
LOL
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75556 - 05/03/2002 04:47 Re: So I want to progam for my Empeg... [Re: wfaulk]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
Don't you mean that you had to change cards?

I did, but that was nothing compared to three-pass assembler that used paper tape as intermediate storage (punched and read on AT&T KSR-33 teletype), or hand-assembling a bootstrap loader and entering it by means of front panel switches. All that on real-world computer (Nova3 by Data General) used in a physics laboratory, not a hoby project.

As for languages used in CS study, I think that one should used several, those best suited for topic at hand. So, perhaps Pascal for fundamental algorithms and data structures, Smalltalk for OO concepts, some Assembly and then C (or BCPL) for 'close to the metal (or, rather, silicon)' work, Lisp and Prolog for AI concepts, any combination of shell, Perl, Python etc for 'administrative' scripting etc. Then encourage students to glance over Ada, ML, certainly Java and C++, even (gasp) COBOL, Basic, FORTRAN or PL/I. CS study should focus on concepts, ideas and methodology, not languages. A graduate should be able to switch (and learn to use new) languages as easily as editors.
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75557 - 05/03/2002 04:56 Re: So I want to progam for my Empeg... [Re: canuckInOR]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
Once upon a time I briefly used symbolic math packages (Reduce and, I think, Macsima) consisting of several hundred thousands lines of Lisp.
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75558 - 05/03/2002 06:12 Re: So I want to progam for my Empeg... [Re: dclesse]
h_blake
stranger

Registered: 22/05/2001
Posts: 50
Loc: Bedford, UK
Eeek - that site doesn't have entries that account for a number of year of my IT experience:

Ramis II - a semi-hierarchical DB
Mantis - a CICS/COBOL alternative for IBM mainframes
NatStar - a semi-OO language that generates C++
Forte - Java without the curly braces but built for distributed deployment

If there's something out there that fills a small niche and is no good to anyone after a few months I seem to get stuck with it!
_________________________
______ Henrick Bedford, UK Mk2a 10+30gig Mk2 18gig(RIP) backup

Top
#75559 - 05/03/2002 06:45 Re: So I want to progam for my Empeg... [Re: bonzi]
andy
carpal tunnel

Registered: 10/06/1999
Posts: 5916
Loc: Wivenhoe, Essex, UK
hand-assembling a bootstrap loader and entering it by means of front panel switches

On the first computer my dad worked this was the first task each morning, enter the device driver for the paper tape streamer. Six toggle switches (the computer had a 6 bit word), a button to advance to the next memory location and an oscillascope to show you the contents of the current memory location.

Must have been fun:

- set the toggles
- advance to the next slot
- repeat several hundred times...

Once this was done you hit "run" and it loaded every thing else from paper tape.
_________________________
Remind me to change my signature to something more interesting someday

Top
#75560 - 05/03/2002 07:03 Re: So I want to progam for my Empeg... [Re: andy]
peter
carpal tunnel

Registered: 13/07/2000
Posts: 4180
Loc: Cambridge, England
[war stories]

A grizzled old veteran used to tell me of his time with a computer on which running the compiler was prohibitively expensive, so development was done by producing binary patches against the executable, and then modifying the source code so it would hopefully generate code that did what the patched binary did. As if that were not bad enough, the machine was actually so feeble that running the text editor was prohibitively expensive, so developers would delay changing the source until their fix was tested, and then often "forget". Not too much of this and they ended up with a product that bore no relationship to its own source code.

This allegedly went on into the 1980s...

Peter

Top
#75561 - 05/03/2002 10:07 Re: So I want to progam for my Empeg... [Re: bonzi]
genixia
Carpal Tunnel

Registered: 08/02/2002
Posts: 3411
A graduate should be able to switch (and learn
to use new) languages as easily as editors.


Careful...you're about to start WWIII again. Everyone knows that vi is the best.
_________________________
Mk2a 60GB Blue. Serial 030102962 sig.mp3: File Format not Valid.

Top
#75562 - 05/03/2002 10:40 Re: So I want to progam for my Empeg... [Re: bonzi]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31602
Loc: Seattle, WA
Once upon a time I briefly used symbolic math packages (Reduce and, I think, Macsima) consisting of several hundred thousands lines of Lisp.



    "Eternal Flame"
    Parody of “God Lives on Terra” , by Julia Ecklar
    Parody lyrics ©7/29/96 by Bob Kanefsky. All rights reserved.
    This parody was sung by Julia Ecklar on Roundworm.


I was taught assembler in my second year of school.
It’s kinda like construction work — with a toothpick for a tool.
So when I made my senior year, I threw my code away,
And learned the way to program that I still prefer today.

Now, some folks on the Internet put their faith in C++.
They swear that it’s so powerful, it’s what God used for us.
And maybe it lets mortals dredge their objects from the C.
But I think that explains why only God can make a tree.

    For God wrote in Lisp code
    When he filled the leaves with green.
    The fractal flowers and recursive roots:
    The most lovely hack I’ve seen.
    And when I ponder snowflakes, never finding two the same,
    I know God likes a language with its own four-letter name.

Now, I’ve used a SUN under Unix, so I’ve seen what C can hold.
I’ve surfed for Perls, found what Fortran’s for, Got that Java stuff down cold.
Though the chance that I’d write COBOL code is a SNOBOL’s chance in Hell.
And I basically hate hieroglyphs, so I won’t use APL.

Now, God must know all these languages, and a few I haven’t named.
But the Lord made sure, when each sparrow falls, that its flesh will be reclaimed.
And the Lord could not count grains of sand with a 32-bit word.
Who knows where we would go to if Lisp weren’t what he preferred?

    And God wrote in Lisp code
    Every creature great and small.
    Don’t search the disk drive for man.c,
    When the listing’s on the wall.
    And when I watch the lightning
    Burn unbelievers to a crisp,
    I know God had six days to work,
    So he wrote it all in Lisp.

Yes, God had a deadline.
So he wrote it all in Lisp.

_________________________
Tony Fabris

Top
#75563 - 05/03/2002 10:41 Re: So I want to progam for my Empeg... [Re: genixia]
mtempsch
pooh-bah

Registered: 02/06/2000
Posts: 1996
Loc: Gothenburg, Sweden
Everyone knows that vi is the best

Methinks you misspelt beast there...

M-x lock-and-load

/Michael
_________________________
/Michael

Top
#75564 - 05/03/2002 13:00 Re: So I want to progam for my Empeg... [Re: mtempsch]
lectric
pooh-bah

Registered: 20/01/2002
Posts: 2085
Loc: New Orleans, LA
Good Gawd, are we a bunch of nerds or what... ;8^)

Top
#75565 - 05/03/2002 13:26 Re: So I want to progam for my Empeg... [Re: dclesse]
eternalsun
Pooh-Bah

Registered: 09/09/1999
Posts: 1721
Loc: San Jose, CA
Real cute. The PowerBuilder hello world example was needlessly long, and could have been done much more succinctly. :-D

Calvin

Top
#75566 - 05/03/2002 13:27 Re: So I want to progam for my Empeg... [Re: h_blake]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
You should contribute your 'Hello World!' in these - after all, Mantis and Forte are rather mainstream...
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75567 - 05/03/2002 13:30 Re: So I want to progam for my Empeg... [Re: tonyc]
djc
enthusiast

Registered: 08/08/2000
Posts: 351
Loc: chicago
It's just not a very interesting or practical language.

really!? then i'd better get upstairs and warn the CEO that our products are largely based on uninteresting and impractical technology!

--dan.

Top
#75568 - 05/03/2002 13:31 Re: So I want to progam for my Empeg... [Re: genixia]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
Everyone knows that vi is the best.

Of course it is (and I mean it, I use mostly vim when on Windows), but a bit of exotics here and there keeps one in shape
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75569 - 05/03/2002 13:38 Re: So I want to progam for my Empeg... [Re: andy]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
You described it correctly, except that my Nova had 16-bit word and content was displayed by 16 lamps (tiny bulbs - it was before LEDs). Scope 'terminal' was something minicomputers of that time could not afford. But few hundred instructions for a papertape loader is much - my bootstrap had 20-30 16-bit words.

Which was that machine your dad worked on? 6 bit word could be something from Remington Rand (later Sperry, then Univac, then Unisys).
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75570 - 05/03/2002 13:39 Re: So I want to progam for my Empeg... [Re: tfabris]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75571 - 05/03/2002 13:41 Re: So I want to progam for my Empeg... [Re: djc]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
Hey, Dan, where do you work?
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75572 - 05/03/2002 13:46 Re: So I want to progam for my Empeg... [Re: djc]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
really!? then i'd better get upstairs and warn the CEO that our products are largely based on uninteresting and impractical technology!

It's better to find out the truth early, isn't it?
_________________________
- Tony C
my empeg stuff

Top
#75573 - 05/03/2002 14:03 Re: So I want to progam for my Empeg... [Re: Yang]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
In reply to:

Umm... Your prof taught you Lisp, but you didn't find it interesting enough to actually implement your project in it?




No, more a case of I didn't find the project interesting enough to do. I figure by your final year of university, you'd be choosing projects that actually interest you. Not so in this class -- the prof (actually just a grad student -- lousy instructor, bet he gets tenure) made up the projects, and we all had to do the same thing -- part of a "robot" that could given a map, navigate around a "house", and given a set of instructions, pick up "objects" and "move them around". I had taken the AI course because I was interested in neural nets. Turned out the neural net section of the course consisted of about half a lecture. In retrospect, I'd rather have taken languages and compiler theory. :P

Top
#75574 - 05/03/2002 14:17 Re: So I want to progam for my Empeg... [Re: genixia]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
You're right. vi is the best, but that doesn't mean that you shouldn't be familiar with emacs, notepad, pico, etc.

Once, in a training class, one of my classmates asked the instructor where he could find a copy of emacs on the training system. The instructor told him that it wasn't available and that he should just use vi. The ``student'' then sat on his hands and refused to do anything until provided with an emacs binary. I hope that he was spending his own money, or, at least, got fired by whoever paid for the class.

The moral of that story isn't that emacs people are snobs, but that one should know how to get around in every common editor. I consider myself a vi expert (which means that I know more than 25% of its features ) but I'm also good enough to get around in emacs, and I know that pico will insert carriage returns when I haven't told it to.
_________________________
Bitt Faulk

Top
#75575 - 05/03/2002 16:03 Re: So I want to progam for my Empeg... [Re: tonyc]
djc
enthusiast

Registered: 08/08/2000
Posts: 351
Loc: chicago
touché!

--dan.

Top
#75576 - 06/03/2002 03:29 Re: So I want to progam for my Empeg... [Re: wfaulk]
jane
enthusiast

Registered: 10/10/2000
Posts: 350
Loc: Copenhagen SW, Denmark
pico -w

Marius (Escort Cab + Mark II)

Top
#75577 - 06/03/2002 09:37 Re: So I want to progam for my Empeg... [Re: bonzi]
djc
enthusiast

Registered: 08/08/2000
Posts: 351
Loc: chicago
Hey, Dan, where do you work?

here.

programming languages are like tools in a toolbox. each has it's strengths and weaknesses in various attributes, making each one suited to particular tasks. i've learned and used over 40 languages, and i've yet to find a language that had no merit at all.

--dan.

Top
#75578 - 06/03/2002 09:51 Re: So I want to progam for my Empeg... [Re: djc]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
Guh! Orbitz! Second to X10 in use of annoying popup ads on the Internet! I'm sure they're a good company and have good deals on flights and such, but those popup ads are the worst.

But I agree, no language is without merit... I've just never seen Lisp or Scheme used in anything except things like artificial intelligence/neural networking projects. It's very interesting to hear that your company is using them in the "real world." What are you using it for?
_________________________
- Tony C
my empeg stuff

Top
#75579 - 06/03/2002 12:02 Re: So I want to progam for my Empeg... [Re: tonyc]
djc
enthusiast

Registered: 08/08/2000
Posts: 351
Loc: chicago
Guh! Orbitz! Second to X10 in use of annoying popup ads on the Internet! I'm sure they're a good company and have good deals on flights and such, but those popup ads are the worst.

sigh...i couldn't agree more, but our marketing department finds them very cost effective.

What are you using it for?

how do you think we find all those great low fares? orbitz is the only site that can match the skill of a seasoned travel agent in finding the best deals on airfare, and the secret is in the software.

--dan.

Top
#75580 - 06/03/2002 12:35 Re: So I want to progam for my Empeg... [Re: johnmcd3]
johnmcd3
enthusiast

Registered: 19/04/2001
Posts: 369
Loc: Seattle, WA (formerly Houston,...
Can anybody recomend a good book to learn the fundamentals of C quickly that is tailored to someone familiar with C++? I'm looking at some stuff on the web, but was wondering if there is some great resourse that is widely recommended for purchase.

John

P. S. - There seems to be great deal of respect for this book: The C Programming Language by Brian W. Kernighan and Dennis M. Ritchie. The best option? Dated perhaps?


Edited by johnmcd3 (06/03/2002 12:45)
_________________________
1998 BMW ///M3 30 GB Mk2a, Tuner, and 10 GB backup

Top
#75581 - 06/03/2002 12:49 Re: So I want to progam for my Empeg... [Re: johnmcd3]
johnmcd3
enthusiast

Registered: 19/04/2001
Posts: 369
Loc: Seattle, WA (formerly Houston,...
So the point is moot-- I haven't been in a passive mood lately, so I just went bought the book off amazon. If there are other books I'll check them out too.
_________________________
1998 BMW ///M3 30 GB Mk2a, Tuner, and 10 GB backup

Top
#75582 - 06/03/2002 12:55 Re: So I want to progam for my Empeg... [Re: johnmcd3]
mtempsch
pooh-bah

Registered: 02/06/2000
Posts: 1996
Loc: Gothenburg, Sweden
Affectionately(?) known as K&R, it is sort of the definition of the language... Also describes the standard libraries.

Most books tend to go the other way, assuming C knowledge when explaining C++.

/Michael
_________________________
/Michael

Top
#75583 - 06/03/2002 13:27 Re: So I want to progam for my Empeg... [Re: johnmcd3]
rob
carpal tunnel

Registered: 21/05/1999
Posts: 5335
Loc: Cambridge UK
You already know C. What you need to learn is which parts of C++ to stop using

Rob

Top
#75584 - 06/03/2002 14:28 Re: So I want to progam for my Empeg... [Re: mtempsch]
jimhogan
carpal tunnel

Registered: 06/10/1999
Posts: 2591
Loc: Seattle, WA, U.S.A.
Methinks you misspelt beast there...

Good catch! At least vi wins in terms of ubiquity...and it's not sooo bad....but I can never forget the classic opening page of a vi tutorial:

" vi has two modes...

...one of them just beeps at you."

Jim
_________________________
Jim


'Tis the exceptional fellow who lies awake at night thinking of his successes.

Top
#75585 - 06/03/2002 15:05 Re: So I want to progam for my Empeg... [Re: jimhogan]
mtempsch
pooh-bah

Registered: 02/06/2000
Posts: 1996
Loc: Gothenburg, Sweden
" vi has two modes...

...one of them just beeps at you."


LOL!

All the commands you need to know in vi: Esc and :q!

That's usually as far as I go before changing the EDITOR variable. Actually, I can get the basics done in vi, but it usually takes me a couple of :q!'s before I get the hang of it, as it's usually quite a time between the occasions...

/Michael
_________________________
/Michael

Top
#75586 - 06/03/2002 15:54 Re: So I want to progam for my Empeg... [Re: wfaulk]
TedP
member

Registered: 11/01/2002
Posts: 171
Loc: South Bay, CA: USA
nice to see the rivalry is alive and well 20 years later! all i got to say is: M-x vi-mode

Top
#75587 - 06/03/2002 17:40 Re: So I want to progam for my Empeg... [Re: TedP]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
Ah, rivalry is very much alive and well!

During one of recend Linux Expos or something like that there was a huge paintball battle (more than 100 people) between vi and emacs fans. Referees (outsiders) we baffled both at players' enthusiasm and design of their T-shirts; they ended up calling them 'monkeys' and 'cows' (T-shirts we designed, obviously, after O'R's books).

BTW, Bill Joy's main design goal was obviously minimum number of keystrokes - which other editor has six or seven ways of replacing a few characters, so that one can save a keystoke or two? (I sometimes think that Rithcie et al had similar design goal )
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75588 - 06/03/2002 17:44 Re: So I want to progam for my Empeg... [Re: djc]
bonzi
pooh-bah

Registered: 13/09/1999
Posts: 2401
Loc: Croatia
I agree about languages, of course.

BTW, I tried looking up a fare for one week NYC-Zagreb round trip. They offered fares in $800-$3000 range. Interesting, for ZAG-JFK trip (that is, other way around) any agent in Zagreb will easily find fares below $400.
_________________________
Dragi "Bonzi" Raos Q#5196 MkII #080000376, 18GB green MkIIa #040103247, 60GB blue

Top
#75589 - 06/03/2002 19:38 Re: So I want to progam for my Empeg... [Re: bonzi]
djc
enthusiast

Registered: 08/08/2000
Posts: 351
Loc: chicago
BTW, I tried looking up a fare for one week NYC-Zagreb round trip. They offered fares in $800-$3000 range. Interesting, for ZAG-JFK trip (that is, other way around) any agent in Zagreb will easily find fares below $400.

yes, international fares are not our strong point. the AI-based engine only applies to domestic flights in the US.

you'll often find the best deals on international flights from tour operators or wholesalers that buy blocks of seats from the airlines at rock-bottom prices and resell at a discount.

--dan.

Top
Page 1 of 3 1 2 3 >