Win a copy of Functional Design and Architecture this week in the Functional programming forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Rob Spoor
  • Tim Cooke
  • Junilu Lacar
Sheriffs:
  • Henry Wong
  • Liutauras Vilda
  • Jeanne Boyarsky
Saloon Keepers:
  • Jesse Silverman
  • Tim Holloway
  • Stephan van Hulst
  • Tim Moores
  • Carey Brown
Bartenders:
  • Al Hobbs
  • Mikalai Zaikin
  • Piet Souris

JASS Development Tools

 
Bartender
Posts: 242
27
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I program in a language called JASS, which is a language used to create video games that are playable in WarCraft III. There weren't very many good IDEs or tools available for this language since it is not very well known, so I decided to make some. My eventual project (which is still ongoing) is a fully functional & feature rich IDE. This project may be of interest if there are any people on this forum who have used JASS, or just if you're interested in programming things like this in general. I'm by no means an expert at this, I just did things as I thought would work best.

The first repository is an abstract syntax tree capable of representing the JASS programming language. Essentially it can read through a JASS script file and break it down into logical pieces (such as functions, variables, etc.), and then that syntax tree can be used to perform operations that would otherwise be difficult to do successfully (such as variable/function renaming). This project is available on Maven Central. Github: https://github.com/zach-cloud/JSyntaxTree

The second repository is a utility around the StringHash function. The JASS language provides a native that hashes a String into a 32 bit integer. This project allows you to compute the StringHash value of a String using Java code, as well as brute force a hash value to discover a collision of the original value. This can be used to test StringHashes ahead of time, or break them if desired. This is also available on Maven Central. Github: https://github.com/zach-cloud/JStringHash

Then my final one, which uses both of the above repos, is a JavaFX-based IDE for JASS. Featuring syntax highlighting, autocomplete, and a whole bunch of code utilities (such as formatting, renaming, etc). Github: https://github.com/zach-cloud/JAST . The readme contains a link for a standalone release as well.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic