• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

shouldn't vjass be deprecated in favor of wurst?

Status
Not open for further replies.
Pretty sure Zinc isn't allowed in contests... Not entirely sure because I think there is a spell approved here in Zinc. Don't know for sure though.

If I got picked to judge then I wouldn't judge, it should be volunteering. It should be both the judges and the maker of the contest's choice.

However the topic here is should vjass be deprecated and I think not.

Edit: There is one problem here, can you wurst with the world editor or do you require to use an entirely new program?
 
Level 14
Joined
Jun 27, 2008
Messages
1,325
That scripting/programming discussion is complete bullshit. Its unrelated to how powerful jass/vJass/Wurst are and its not interesting in any other way.

About that article Dat-C3 linked:

- "Scripting languages are not compiled."
There is more than compiled/interpreted these days. There are C++ interpreters and JavaScript compilers, there are JIT Compilers and Virtual Machines etc... This distinction doesnt work ...
vJass and Wurst ARE in fact compiled to Jass, which then is interpreted.

- "Scripting languages are easy to use and easy to write."
Hahah wut? Sure, thats a important criterion when designing languages but a poor one to classify them.

- "Scripting languages run inside another program."
What this statement means to say is that the language is connected to other resources and control by a very defined interface. The languages access is restricted to functions provided by the underlying program.
... in the end this is how "programming" languages work too. They cooperate with the system core using an API (which uses the systems syscalls). If you write an operating system with a shitty API then you end up with the same problems Jass has: the language is fine, but the functions provided by the underlying system are very restricted.

Now plz no more "blabla because jass is a scripting language"
 
Why not combine it with the newgen editor? That'd be the best choice in my opinion edo494.

I was only stating we aren't programming muzzel. The article covered that vjass and jass is scripting. It's totally related to how powerful jass is because its a old scripting language therefore it can't do any of the nice "new" stuff.

So does this play nice with vjass or do you have to choose?
 
Last edited:
Level 14
Joined
Jun 27, 2008
Messages
1,325
Why not combine it with the newgen editor? That'd be the best choice in my opinion edo494.
Combining Wurst and vJass doesnt make sense. Its possible for the sake of compatibility with vJass Libraries, but its definitely not recommended. If you seriously use Wurst you dont want to have vJass dependencies.
In that regard, combining doesnt make sense.

So does this play nice with vjass or do you have to choose?
You dont have to chose, but want to.

I was only stating we aren't programming muzzle. The article covered that vjass and jass is scripting. It's totally related to how powerful jass is because its a old scripting language therefore it can't do any of the nice "new" stuff.

We are programming, my name is muzzEL, the article is trash, its not related, shut up

If you didnt understand my last post feel free to read it another 100 times.
 
Well newgen editor doesn't just have vjass, it also has many other features that could be useful unless wurst's modified editor already has this.

That's good to know that wurst can be used with vjass, thanks. Was really wondering about that.

We aren't programming, we're scripting. The only programming that was done was to adjust eclipse to script. Yeah sorry about your name, it was a typo. Yeah the article was mostly trash except for the fact we're scripting. It was barely related, that is a bad way to respond when someone bothers to actually respond to this trash thread currently unless it gets renamed.

If you didn't understand how we're scripting and not programming then stop replying to me here and take it to VM's. Feel free to read this post over and over again penguin.


This next part isn't directed to you Muzzel.
How many people if there is an estimate use Wurst? I remember you guys being on something like GitHub right?
 
Level 14
Joined
Jun 27, 2008
Messages
1,325
WurstPack is JNGP with a Wurst Compiler added, so it is already pretty much what you suggested. So actually JNGP could be deprecated in favor or WurstPack, but i dont see why..

Scripting/Programming: i agree we are scripting, but scripting a special kind of programming so ultimately we are programming. Thats exactly what i wrote in my post, which is why i wanted you to read it again (i never said that jass isnt scripting, just that nobody cares).
The important part is that the fact that jass has limitations is not because its a scripting language. NO CAUSALITY!

Dont be too concerned with the thread, vjass wont get deprecated anyway so there is no reason to enforce staying on topic.
 

Deleted member 219079

D

Deleted member 219079

This is already said point, but the fact that Wurst is still in development (I mean there's features devs have said they'll change) makes it cool to be a Wurst user :p

But this, how they advertise their product
151697-albums6077-picture72487.png

MAKES NO SENSE!! Struct extends array makes you able to use your own allocation! Which can result in blazing fast loops and allocating!

Also Wurst nulls abstract locals by itself, so it handles trash better :p

but this is useless arguing, as is the whole thread imo
I <3 useless threads
 
Oh hi, I used to use cJASS xD. (gets killed in action)

I think Wurst is actualy a better option than vJass.

First, the language was actualy designed well from the very start, unlike vJass which fixed it's weaknesses through hacks and patches (struct extends array, single inheritance interfaces ? :O, multiple inheritance)

Second, Wurst makes programming more standard and follows conventions (forced identation for example). Thus fits better for an standard rather than vJass.

Third, Wurst is based on proven world wide used programming languages such as Python and Ruby, while vJass is a class of it's own which follows the terrible path of a verbose language such as JASS. (Even blizzard depracated their JASS syntax in favor of C-like syntax when they made GALAXY for Sc2).

Fourth, Wurst fixes the natural simplified structures of JASS like loops. JASS loops resemble low-level code where you define a continues jumping block and a jump out instruction (exitwhen). Wurst adds for-loops, while-loops and do-loops which are way more natural and readable.

Fifth, native object types and created classes share common methods, everything follows a standard in Wurst, while vJass distinguish them, thus making programming a bit more confusing.

Pros for vJASS

First, vJASS has a LOT of hacks to be honest, this is bad languagedesignwise but is nice on code optimization.

Second, vJASS has been mantained for a longer time and has been widely revised.
 
Level 15
Joined
Aug 7, 2013
Messages
1,337
Frotty said:
You refer to previous posts, but don't seem to read mine.
Eclipse and notepad++ don#t fucking COMPARE to eclipse.

@Frotty I went back and re-read all your posts before the most recent one I made concering using Eclipse with vJASS. I additionally copied all the parts of your posts concerning Eclipse and it being a major advantage of Wurst.

The point I've been trying to make is that vJASS can also take advantage of everything Eclipse has to offer, and Nestharus has already kindly made the necessary files to make this work, Notepad++ aside. This I have mentioned in all my posts.

Frotty said:
Eclipse and notepad++ don#t fucking COMPARE to eclipse.

I have no idea what this means. I agree Notepad++ does not compare to Eclipse. But how is "Eclipse" not the same as "eclipse?" I tried a google search but apparently they are the same "Eclipse?" I'm not a programmer so I may be ignorant about this, please correct me if I'm mistaken.

I think what you may be suggesting is that the files Nestharus created for vJASS in Eclipse are not as developed as ones made for Wurst? If so, simply say so, since it was not apparent to me from the posts regarding Eclipse.

The take-home is this: Both vJASS and Wurst can be used with Eclipse. Nestharus has files in his repo for doing so. Wurst has extensive support for writing in Eclipse as well.

Frotty said:
Eclipse autocomplete is far, far superior over TESH or the newer alternative in the editing tools forum.
It is context sensitive (which means it suggests fitting stuff and not just everything),
uses a fuzzy search (which means entering .get will suggest ".getZ" as well as ".posGet" or even ".together"),
has built-in hot-doc providing documentation about even suggested function,
works for class constructors,
automatically places brackets (but only when needed),
and the main improvement is that it works with custom code (packages, globals, functions, classes, ...) and not just common.j and blizzard.j

Frotty said:
Wurstpack supports vJass, maybe I should add this to my signature as people seem to have stuck this in their head as counter arguement.

It simply runs Jasshelper before Wurst, converting all the vJass to vanilla Jass which Wurst can handle.
So you can freely combine your resources while trying to convert or just try out WurstScript.

This doesn't work for running from Eclipse and linux/mac users of course, since Jasshelper is an windows executable file.

Frotty said:
You refer to previous posts, but don't seem to read mine.
Eclipse and notepad++ don#t fucking COMPARE to eclipse.
And if you think otherwise you just have no idea.
And that's all that has to be said about the IDE, really.
I already repeated myself like 10 times on this.
 
Level 14
Joined
Dec 12, 2012
Messages
1,007
The point I've been trying to make is that vJASS can also take advantage of everything Eclipse has to offer, and Nestharus has already kindly made the necessary files to make this work, Notepad++ aside. This I have mentioned in all my posts.

This is wrong as Frotty already tried to explain you.

Yes, Nestharus made some files for Notepad++, however those files contain only static information about the vJass language, like native functions or BJs. But even the new TESH offers more features than that.

The Wurst plugin for Eclipse however offers semantic informations. That means that the autocomplete list also contains user-defined functions, classes and so on, that you can jump to the declaration of that functions, you have a class view, online error parsing plus warnings and many more. This functionality is completly out of scope for vJass at the moment, because there is no program/tool/plugin that offers this features.

Of course you can use vJass too in Eclipse, but without a decent plugin it doesn't make sense, then you could just stick with Notepad++ which at the end has even less features than the new TESH.
 
Level 23
Joined
Jan 1, 2009
Messages
1,608
@Frotty I went back and re-read all your posts before the most recent one I made concering using Eclipse with vJASS. I additionally copied all the parts of your posts concerning Eclipse and it being a major advantage of Wurst.

Apparently you didn't, else you wouldn't post the same arguments again.
Please excuse a few typos in my posts, some of them were written from a mobile phone. (In the prominent one I ment TESH instead of Eclipse.

Yes, since the addition of Jurst, Eclipse can parse and compile most most vJass Libraries, but only because of the wurstscript-plugin.
(among other unsupproted things are: extends array, method operators, textmacros, keys, ...)
So you can get all these features for your vJass scripts as well.
We did this to make the transition from vJass to Wurst easier.

And please link resources if you refer to them. I can't see anything for eclipse in Nes' repo.

This functionality is completly out of scope for vJass at the moment, because there is no program/tool/plugin that offers this features.

Wurst offers these features?(at least partially). It is not "completely" out of scope. All the semantic features work, as long as your vJass compiles with wurst.

Eclipse was always a critique point for people to start with wurst. If vJass users start to use eclipse, I can't take it seriously anymore.
#######
Hive ppl are just weird
 
Level 15
Joined
Aug 7, 2013
Messages
1,337
Apparently you didn't, else you wouldn't post the same arguments again.

Well I have had to keep repeating myself because I didn't understand, until looking_for_help pointed it out, what the differences were.

looking_for_help said:
the Wurst plugin for Eclipse however offers semantic information

This is the first time this has been clarified, which would have simplified things a lot.

I haven't compared Nestharus' Eclipse files to Wurst's, so while both have Eclipse support, it appears there is good documentation on what Wurst's offers for features in Eclipse.

Frotty said:
Apparently you didn't, else you wouldn't post the same arguments again.

@Frotty No I read all your posts in the past, and I went back re-read them again. To clarify, I will go through each of your posts concerning Eclipse usage where it was not immediately obvious to me what looking_for_help points out explicitly. Remember I am not a programmer. It isn't an excuse or shield, but only that I'm ignorant and would benefit from more verbose explanation as after six posts I still did not understand.

Frotty said:
Eclipse autocomplete is far, far superior over TESH or the newer alternative in the editing tools forum.

Right. This autocomplete feature works with any language, including vJASS?

It is context sensitive (which means it suggests fitting stuff and not just everything)

A context sensitive search works independent of the language, since it's just looking at strings, unless it incorporates semantic information in the search (that would be complicated for interface).

uses a fuzzy search (which means entering .get will suggest ".getZ" as well as ".posGet" or even ".together"),

Just a substring search, which should work for any language.

has built-in hot-doc providing documentation about even suggested function,

Not sure if this in Nestharus' files for using Eclipse with vJASS.

works for class constructors,

I believe this is getting to semantic information specific to the language, in which case this is exclusive to Wurst.

automatically places brackets (but only when needed),

Works for any language if the delimiters / scope words are defined.

and the main improvement is that it works with custom code (packages, globals, functions, classes, ...) and not just common.j and blizzard.j

This is also language specific. I see now. When I read this the first time I confused semantic, language specific features with syntax / string search based ones and so assumed that Eclipse automatically gives this to every language without being told explicitly. However, it appears this is not the case, that Eclipse can't infer the semantics of the language.
 
Last edited:
Level 23
Joined
Jan 1, 2009
Messages
1,608
This is the first time this has been clarified, which would have simplified things a lot.

Either you are stupid, ignorant or just can't read
The information you are quoting, is explanation about semantic information.

And as you say, you are not a programmer, and many of your statements are simply wrong.

The context sensitive ac works on the AST that the compiler builds, not on "strings".
And again, you need this information to provide USEFUL information.
Context sensitive implies that it is not just looking at a few strings on the left and right.

And what is "Works for any language" supposed to mean?
It only works, if someone writes it. Obviously you could do this with any language, but we are comparing TESH with the eclipse-plugin, so it makes no sense to say it isn't an improvement.
 
Last edited:
Level 14
Joined
Jun 27, 2008
Messages
1,325
You got this wrong here, sethmachine. All those features you listed are part of the Wurst Eclipse plugin, not something Eclipse magically does by itself. Subsequently you cannot just open a vJass file in eclipse and expect the same features to be available, that would require a full vJass plugin similar to the Wurst one.
 
Level 15
Joined
Aug 7, 2013
Messages
1,337
You got this wrong here, sethmachine. All those features you listed are part of the Wurst Eclipse plugin, not something Eclipse magically does by itself. Subsequently you cannot just open a vJass file in eclipse and expect the same features to be available, that would require a full vJass plugin similar to the Wurst one.

Aye I did get this wrong.

But it was never explicitly mentioned that the features mentioned were unique to the Eclipse plugin, hence my confusion.

In terms of the actual vJASS plugin, I misunderstood what Nestharus wrote. He did not make a plugin but a series of files for starting to develop one.

See this thread: http://www.hiveworkshop.com/forums/warcraft-editing-tools-277/jass-notepad-252872/

And Nestharus' post, which I misinterpreted

Nestharus said:
lmao, I deleted the repo, hahaha

I have them, I just gotta search for them. I have the cpp project that generates the stuff and so on if you want to continue it (I only did some of it).

notepad++ can't handle //! vs // and a few other things :\

I have a parser thing in Antlr if you want to work on something for Eclipse (it uses Antlr)

Cheers,

seth
 
Level 19
Joined
Aug 8, 2007
Messages
2,765
Done. So we should deprecate vJass now.

?

Can I use vJass together with Wurst?
Yes, you can use both. However it is not possible to call Wurst-functions from vJass and calling vJass from Wurst is not very convenient.

emphasis on the smoothly.

also,

(among other unsupproted things are: extends array, method operators, textmacros, keys, ...)

every library i write uses extends array, alot of them use operators/textmacros, not sure what a key is.

Also, i should add that it shouldnt be depreceated untill the setup is as easy and bugfree as vJass. Jasshelper is like a 1 minute DL that usually works out of the box (provided firewalls are disabled and administrative access) and setting up Wurst took me like 3 hours with the help of the developer...
 
Level 13
Joined
Mar 6, 2008
Messages
852
every library i write uses extends array, alot of them use operators/textmacros, not sure what a key is.

The support of VJass in Wurst is not meant to be all-embracing.
It's more like the alternative drug one gives to people who are willing to quit their unhealthy addiction.

BTW the "shouldn't vjass be deprecated in favor of wurst?"-topic is already cleared. No-one wants it to be deprecated for various reasons.
 
Last edited:
Level 12
Joined
Feb 22, 2010
Messages
1,115
I thought we are playing warcraft which uses Jass language designed for it.Why would I have to learn a stupid indentation based language just because some guys think they are cool.
 
Level 26
Joined
Aug 18, 2009
Messages
4,097
I thought we are playing warcraft which uses Jass language designed for it.Why would I have to learn a stupid indentation based language just because some guys think they are cool.

It offers advantages to improve coding in wc3 like vJass has already proved. It presents features from languages outside of wc3 and therefore teaches you more. In this case, you can also get into touch with the widely-used Eclipse IDE. While I am not using Wurst for my major project at the moment, Eclipse is still very helpful for organizing my trigger data.

You are not forced to go this way but you should not expect others to stay either. While, according to your post, you are troubled to learn something new, others are troubled to remain the old ways.
 
I think most people can agree that this thread has become a cesspit.

Wurst is better. But that is no reason for deprecation. We haven't even deprecated vanilla JASS. :p Wurst is a personal choice and gives you freedom to code without feeling limited by JASS syntactical limitations or vJASS's underlying errors. But it should remain a personal choice, just as vJASS or JASS is.

We have a section for it. Whether it becomes dominant is up to the community. Alas, it is time for this thread to be closed. If you have something to add, read through the entire thread. If you still have something to add, read through it one more time. Chances are, it has been covered and beaten to death.

Closed.
 
Status
Not open for further replies.
Top