Search the web
Sign In
New User? Sign Up
varaq-dev · for developers of and for the Klingon programming language var'aq
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Hear how Yahoo! Groups has changed the lives of others. Take me there.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
A dim bulb brightens...   Message List  
Reply | Forward Message #307 of 616 |
 
----- Original Message -----
Sent: Thursday, July 31, 2003 11:42 PM
Subject: Re: [varaq-dev] Questions, and lots of 'em.


> So will my prior experience help me or hinder me in this?

Yes.

In some regards, programming is programming.  At least until you get to
some of the weirder languages, anyway, and var'aq isn't particularly weird
at all; it just has alternate keywords in a fictional nonhuman language.
You set up some instructions for a computer to do something with your
input, then you give it some input.

On the other hand, different kinds of languages can really be quite
disparate in their approaches to things.  It's not easy to describe in a
couple paragraphs; I taught a semester-long class on it a couple years
ago.  Keep reading and see if it starts to fit into your head a little
better.

I'll try to cut down on assumptions so I won't feel like such a moron for
assuming them when you ask for more clarification.
 
No need to feel like a moron. The shortcoming's on this end, as far as I'm concerned. This is your list, I'm just a new invader, er, resident. }}: )

You know what a stack is, yes?  Linear data structure where the primary
operations are push (add a value to the top) and pop (remove the top value
to do something with it)?
 
I was thinking of it as a dynamic array of "variables", like the CArray class in VC++, until I grok it a little deeper.

Foreign idea: code is data, and data is code.
This idea is doable.


I had a big problem teaching Perl to a VC++ geek because he wouldn't
accept that strings are scalar values.
 
Little foreign to me, too. But I'll leave it to the interpreter to take care of the memory management.
 
The variable isn't attached to
a type when it's created (like C++); it simply reflects whatever kind of
data is in its value.  If you set it to a string, it's a string.  If you
then set it to a boolean, it's a boolean.
 
Like a JavaScript var.


> Ah, K, got it. But It would be like associating entire chunks of code with a
> single variable (the name), right? So compared to say, C++ data structures,
> the shelves are the same, the cabinet's just bigger, qar'a'?

Something like that, yeah.

Only the most sadistic C++ programs pass procedures around as data (it is
possible; don't ask me how, though).  In functional languages, it's fairly
common.  Mostly because there's really no way to distinguish--procedures
get names just like everything else, so they must be valid values.  In
some OO languages (dunno about MSVC++), it's possible to have a method and
an instance (or even class) variable named "count", and the compiler
figures out which one you mean from context--you can't call an int, and
you can't increment a method.  None of that in var'aq; if you've got
something named count, it's either one or the other, but not both at the
same time.

Functional languages in general (I'm sure there are exceptions) also tend
to favor recursive algorithms.  Sure, you can usually do the other stuff
too, but the prevalence of the stack really makes recursion attractive.


> > Code is processed as it's entered.
>
> So this is an interpreted language?
> So will compiled code be possible (in the future)?
 
Most functional languages are "interpreted", in the sense that they don't
usually produce external independent executable binary code.
 That's not the only thing "compiled" means, but it's what you meant. 
 
Or something like Java bytecode.
 
  The interactive environment is more like the old-style BASICs, except without
the pesky line numbers and crap like that.

That partial-compile is also what goes on with Java and Perl, although the
breaks between the phases are at slightly different places.


> So this is not an OO language? Like (again, forgive the analogy) VB?

Variables are(n't) classed in var'aq--data is.
 
K, got it.

If the choices are only "OO or not-OO", then yes, it's in the same boat as
VB.  But it's really nothing like it.  :)
 
I got that already }}: ) 
I used the VB example only as an example of a non-OO language. I would not insult your creation with a comparison beyond that.}}: )

The big giant thing you missed:  ".pl" means you're dealing with a Perl
program.  So, you need Perl to actually run it. 
 
big giant lightbulb: So one need not learn Perl to learn varaq. Perl is just the language used to write the interpreter. It could also be written in Java, or Pascal, or VC++. }}: ) 
Right?
Ideas, Ideas, Ideas...

--ngabwI'
HovpoH juHDaq:
http://web.tampabay.rr.com/ngabwi/
HovpoH 700362.1


Sat Aug 2, 2003 12:48 pm

magicspiderwebb
Offline Offline
Send Email Send Email

Forward
Message #307 of 616 |
Expand Messages Author Sort by Date

... From: Jason Proctor To: varaq-dev@yahoogroups.com Sent: Thursday, July 31, 2003 11:42 PM Subject: Re: [varaq-dev] Questions, and lots of 'em. ... Yes. In...
Scott Willis
magicspiderwebb
Offline Send Email
Aug 2, 2003
12:50 pm

... That'll work. Just remember, you really only play with one end; you don't get random access to the middle. ... Yes. Just a bucket with a name. ... No...
Jason Proctor
lowercase_j
Offline Send Email
Aug 2, 2003
5:24 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help