Jeroo

Pages: 123
Nov 17, 2009 at 5:20pm
closed account (S6k9GNh0)
I have a new scripting preference. It's Jeroo, the kangaroo emulating language based on Java! I've been trying for the past 15 minutes to make a variable, make a simple function that accepts *gasp* arguments / parameters, or even make a simple while loop which is even in the documentation. This is the worst beginners language I have ever had to work with. Why is this in a classroom?
Last edited on Nov 17, 2009 at 5:21pm
Nov 17, 2009 at 5:47pm
Why is this in a classroom?
Wikipedia wrote:
Jeroo is a cross-platform educational tool for learning object oriented programming concepts. In particular, the program helps learning concepts such as objects, methods and basic control structures.

http://en.wikipedia.org/wiki/Jeroo
Nov 18, 2009 at 1:38pm
What the hell happened to Pascal? My school uses Pascal as a teaching language (for A level students taking Computing, which I plan to take)...
Nov 18, 2009 at 2:16pm
Pascal is quite old and non OO
Last edited on Nov 18, 2009 at 2:16pm
Nov 18, 2009 at 2:37pm
closed account (S6k9GNh0)
Bazzy, I understand that's what it's meant for. It has terrible method of teaching OO based programming. As a matter of fact, most of my class that uses Jeroo probably doesn't know what calling Jeroo bob = new Jeroo; does. I think even a five year old can understand that in order to get a specific object to perform an operation, you need to call the operation through the object instance, or like bob.hop(). Sure this shows the basic use of objects but the language itself doesn't let variables be declared by the object, doesn't allow you to pass arguments to object operations, nor does it allow you to return variables.

Calling int bob; is invalid.
method autoFunction(int bob){} is invalid.
method autoFunction(){} is valid.

Though you can make more instances of Jeroo, the only classed object allowed in the entire language, and they can call other objects, the objects have to interact with the related object directly. You cannot tell the object what related object to interact with which is bad practice which is a result of functions without parameters. You almost never do this because of the simple lack of flexibility this way of coding creates.

I truly do not believe this is a language that should be used as beginning code due to bad practices forced upon the developer and the inability to do the most basic of programming techniques such as declare a variable other than Jeroo which, by the way, isn't even explained that it is an object or why it's the only one that can be used to use the new function.

That and the while loop, the only control structure loop available, is a piece of crap and breaks terribly easy during compilation. For instance, if you don't have a boolean method to check with, your screwed since while(true) {} is obviously invalid since the boolean values of true and false are not available in the language. In order to use the loop, you have to call one of there crappy boolean based functions. So, if you have a function that makes you move in a circle infinitely, you have to declare the while loop like so: while( bob.hasFlower() ) { bob.MoveInCircle() } which again, sends a bad impression to a lot of beginners since there is almost no need to check if bob has any flowers in this case.
Last edited on Nov 18, 2009 at 6:09pm
Nov 18, 2009 at 5:09pm
Errr...
Bazzy wrote:
Pascal is quite old and non OO

Object Pascal then. I hate OOP anyway. Edit: or Delphi.

Pascal is still a good language to learn. Python would be better than this stupid "Jeroo".

Only one object, and it's called Jeroo? Who the hell came up with this? Are they brain dead?
Last edited on Nov 18, 2009 at 5:16pm
Nov 18, 2009 at 5:16pm
I hate OOP anyway.

This doesn't mean that it shouldn't be taught

Pascal is still a good language to learn. Python would be better than this stupid "Jeroo".

I agree on this, students should learn 'real' programming languages not that stupid thing

Only one object, and it's called Jeroo? Who the hell came up with this? Are they brain dead?

I can't think of any programming language with a 'clever' name...
Almost all have stupid names
Nov 18, 2009 at 5:38pm
C isn't a "stupid" name. Just unimaginative. "C with Classes" is a stupid name, C++ isn't.
Nov 18, 2009 at 5:42pm
"C++" may or may not be stupid, it surely isn't serious
http://www2.research.att.com/~bs/bs_faq.html#name
Nov 18, 2009 at 6:16pm
closed account (S6k9GNh0)
As a side note, here's an example of the Jeroo language at it's highest use:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@Java
method doPlantPattern()
{
   plant();
   turn(LEFT);
   hop();
   turn(RIGHT);
   hop();
   if (isWater(AHEAD))
   {
      turn(LEFT);
   }
}
@@
method main()
{
  Jeroo betty = new Jeroo(0,11,WEST,60);
  while(!betty.isFlower(HERE))
  {
     betty.doPlantPattern();
  }
} 


It's based on Java syntax for those who don't know. This makes a simple diamond in the field. Apparently, people in my class were trying to make the exact steps instead of making an algorithm >.>. For those who don't know, that's easily over 200 lines of code. EDIT: Apparently, the teacher wanted us to copy the lines of code instead of making an algorithm like I did. This is pathetic. T.T

@ C Naming: Well what do you expect... What would you call it other than some goofy ass name like Scratch, Alice, or Jeroo?
Last edited on Nov 18, 2009 at 6:22pm
Nov 18, 2009 at 6:18pm
Exactly. Why would you call it something dumb like that?

Anyhow; did you get forced to learn this Jeroo crap or did you decide to do it, realise it was retarded, but weren't allowed to switch out of the class?
Nov 18, 2009 at 6:24pm
closed account (S6k9GNh0)
Yeah, pretty much, I joined the Computer Science class of my own will, expecting something else or more advanced. They used to teach Pascal, but when I was in the class two years ago, I couldn't even figure out simple parameters or the difference between a real and integer. Now, they're teaching Scratch, Alice, Jeroo, and at the end, Java. It's wayyyy to easy. The algorithm above took me a little under a minute to figure out and that's the entire days assignment.
Last edited on Nov 18, 2009 at 6:25pm
Nov 18, 2009 at 8:39pm
I don't get it. How does this teach OOP? It's just a bunch of disjointed calls. For all I know, 'Jeroo' is just a C structure with a bit of state and a bunch of functions operate on its data. Just look at doPlantPattern(). Is there anything in its definition that suggests it's a method of Jeroo? I'm guessing it's the keyword method, but you can only know that if you look at the reference. What about new classes and their methods? And don't get me started on the implicit passing of this I so much hate.
Nov 19, 2009 at 5:20am
Wow, that looks really crappy...luckily I didn't have to learn that >_>
Nov 19, 2009 at 5:17pm
closed account (S6k9GNh0)
Well this is the internal source page. It provides you an IDE along with Jeroo's playing field so you don't actually add the @Java reference or the @@ reference. In the source, everything referenced after @ is Jeroo functions. Everything after @@ are external and global methods. Should have explained that earlier.

I will say that the inability to make variables even makes the teacher laugh. He didn't even know about that until yesterday when I brought it up.
Last edited on Nov 19, 2009 at 5:23pm
Nov 19, 2009 at 9:47pm
Be grateful at least you don't have to learn binary.(I am not implying that I learned it either)
Nov 20, 2009 at 2:08pm
What's wrong in learning binary? Some basic knowledge is useful
Nov 20, 2009 at 2:15pm
closed account (S6k9GNh0)
I agree. Plus I understand binary. If you mean 'code' in a binary, it's not much different from assembly since it's usually in direct relation. If you mean 'understanding' binary, that's easy to understand if you've studied it for as long as I have as a hobbiest.
Nov 20, 2009 at 2:28pm
And if you know binary you can count up to 31 with a single hand
Nov 20, 2009 at 2:32pm
Or to 32, depending on your semantics of zero.
Pages: 123