Haces
|
  |
| Joined: 30 Jun 2012 |
| Total Posts: 460 |
|
|
| 25 Jul 2012 02:09 PM |
Visual basic has hints headers and etc that helps you with functions etc.
It would make scripting alot easier |
|
|
| Report Abuse |
|
|
| |
|
|
| 25 Jul 2012 02:47 PM |
| You mean that you would like a Lua IDE like that of the one in Visual Studio? |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 02:55 PM |
| All of the reasons that make Lua better than VB also make it difficult to make an IDE predict what is happening, so the IDE wouldn't be able to be very helpful if you aren't just pretending your code is in some strict language like VB or C/C#/C++ etc. |
|
|
| Report Abuse |
|
|
NilPill
|
  |
| Joined: 20 Apr 2011 |
| Total Posts: 962 |
|
|
| 25 Jul 2012 03:07 PM |
| Studio should detect errors in a script while you write it, like VS |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 03:13 PM |
| Would die and respawn for a eclipse style roblox lua ide |
|
|
| Report Abuse |
|
|
TaslemGuy
|
  |
| Joined: 10 Jun 2009 |
| Total Posts: 12174 |
|
|
| 25 Jul 2012 03:25 PM |
As BlueTaslem already stated:
IDE's depend on static code analysis.
Lua is highly functional and duck typed, whereas languages like Java and VB are barely functional and strongly, statically, explicitly typed.
Making a comparable, useful IDE probably isn't feasible for Lua in any environment. |
|
|
| Report Abuse |
|
|
mustyoshi
|
  |
 |
| Joined: 27 Dec 2007 |
| Total Posts: 41651 |
|
|
| 25 Jul 2012 03:25 PM |
Gah Taslem beat me to it :(
~Monica |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 03:55 PM |
| I mean, it is feasible to make a fairly intelligent IDE, but it will not be able to guarantee that code functions properly (in many cases this would be equivalent to solving the halting problem, which I've been told is impossible). |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 05:42 PM |
Download Eclipse, go in the Eclipse Marketplace and search 'Koneki'.
There, you have your epic IDE with code completion, code outline, syntax highlighting, real-time error checking, and, believe it or not, but it even has a debugger.
Of course, the debugger doesn't work for code using the ROBLOX API, but it still does work for normal Lua code.
Now, you have no excuse. |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 05:46 PM |
Now that I think about it...
Wouldn't it be awesome if we made an Eclipse plugin based on Koneki and integrated a simulation of the ROBLOX API in it?
We'd be able to debug ROBLOX Lua code and we could add syntax completion to it too.
That would be... awesome. And it wouldn't require that much work, since we just need to simulate the ROBLOX environment and since the Koneki team already did all the hard work for us. :D |
|
|
| Report Abuse |
|
|
lombardo2
|
  |
| Joined: 30 Nov 2008 |
| Total Posts: 1604 |
|
|
| 25 Jul 2012 05:57 PM |
| Yes, lua is a interpreted language, making that things is harder, but not impossible. I prefer Intellij IDEA over Eclipse, it have the best lua IDE I have ever seen, based on kahlua, a lua implementation for java. |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 07:08 PM |
@Julien
Make it so it checks the wiki for revisions and adds/edits methods/properties dynamically.
EPIC |
|
|
| Report Abuse |
|
|
Merely
|
  |
| Joined: 07 Dec 2010 |
| Total Posts: 17266 |
|
|
| 25 Jul 2012 07:16 PM |
> since we just need to simulate the ROBLOX environment
That is the hard part... |
|
|
| Report Abuse |
|
|
stravant
|
  |
 |
| Joined: 22 Oct 2007 |
| Total Posts: 2893 |
|
|
| 25 Jul 2012 07:19 PM |
The trouble is that a lot of the most useful things are impossible to do, or at least very difficult: game.Players. --> code completion can suggest things here just fine.
even: game.Workspace.MyModel. --> even here
But what about a tycoon that copies the stuff into the workspace: game.Workspace.ThingA. --> ThingA does not exist until the game has run, there can't reasonably be any code completion
Or: function blah(player) player. --> there can't be any code completion here either reasonably. In fact, even making a _whole lot_ of guesses and managing to assume a player gives people the false impression that only a player can be passed, when that is not even true, and may cause code to fail. end game.Players.ChildAdded:connect(blah)
The flexibility of having a parent-child hierarchy where anything can be a child of anything else is also a really bad thing for code completion, and means that the code completion can't be 100% correct on pretty much anything. |
|
|
| Report Abuse |
|
|
Quenty
|
  |
| Joined: 03 Sep 2009 |
| Total Posts: 9316 |
|
|
| 25 Jul 2012 07:33 PM |
I do think ROBLOX needs to automatically highlight bad syntax.
That would help a lot. Also, fixing events after a few plays, and whatnot.
Yes, it would all help for someone who ends up spending 3/4th of his/her's coding time debugging his/her's own bad code. |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 07:41 PM |
I suggest we make an Eclipse plugin based on Koneki which simulates the ROBLOX environment so we can use the debugger.
That wouldn't be too hard (of course, we can't completely remake it because that would require recreating every single method/event) and it would be extremely useful. How many times have you came across a bug that took you a long time to fix? Imagine if you had been able to use a debugger at that moment. It would have been infinitely easier to fix the bug...
@Stravant
I didn't mean that kind of code completion. That would just be way too hard.
I just meant it as in improving the code completion, for example, by adding the ROBLOX-specific libraries and variables and by removing the Lua libraries and variables that aren't in ROBLOX.
That would all be somewhat easy and yet very useful. |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 07:45 PM |
| Make a plugin that takes everything that's a child to game and hashes the hierarchy and properties of every one and turns it into a string that can be imported into Eclipse by means of a textbox dialog? |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 07:46 PM |
| Or, even better, give it the ability to read .rbxl files? |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 07:52 PM |
@Techboy6601
You're a genius.
Eclipse can already read RBLX files, they're just XML files and Eclipse has some neat XML features...
Basically, we just need to convert the RBLX file from the XML structure, as Eclipse reads it, to a structure we can use in the debugger.
Actually, since we're at it, we could even make a system to convert it back and forth and then be able to run code in Eclipse as if it had been in ROBLOX studio's command bar, except that methods and events won't work.
In fact, we could even completely remake the ROBLOX studio in Eclipse without any graphical interface and without the built-in tools.
We'd then be able to edit ROBLOX places in Eclipse by editing them in XML mode using Eclipse's XML editor.
The most funny thing about all of this is that almost all the hard work was already done for us by Eclipse. The rest would just be to integrate these tools into a certain layout and to simulate a ROBLOX environment without methods and events. |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 07:57 PM |
@Julien
While we're at it, why not remake ROBLOX Studio with all the features everyone wants and sell it to ROBLOX for a ludicrous amount of money? >:D #scheming
Anyways, yeah. We could remake the Explorer and Properties GUI's, and *gasp* recreate the command bar! See, if you change a property via the command bar, the XML hierarchy could be reflected to show that; if you use :Remove() or :Destory it could remove that specific XML entry.
trololololol i feel liek a geunis |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 07:59 PM |
@techboy6601
Because THAT would be too hard.
We don't need to recreate the explorer, Eclipse did that for us already.
We don't need to recreate the properties panel, Eclipse did that for us already.
It's just XML, and there are lots of tools to manipulate XML out there.
The only problem is methods and events. We can easily make properties work, but what about methods and events? We can't recreate every single of them... |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 08:05 PM |
I can see how events would be hard to implement. Actually, I doubt it's possible without recreating ROBLOX itself. But some methods could be implemented. Instance.new(), for example, or :Destroy() or :Remove(). The only methods I don't see being possible to reimplement are the DP style ones, because that would need an actual DP server. Although we could make it check if it has the right amount of arguments, give warnings if WaitForDataReady isn't used, or if pcall() is used with a wait()...etc.
The only challenge I think will be making the debugger which actually runs this. |
|
|
| Report Abuse |
|
|
|
| 25 Jul 2012 08:24 PM |
@Techboy6601
Instance.new isn't a method and we will of course remake it.
As for remaking only certain methods, eh... I think that if we're not going to remake them all, we might as well not remake any of them at all...
"The only challenge I think will be making the debugger which actually runs this."
We don't need to make the debugger, Eclipse already made it for us. |
|
|
| Report Abuse |
|
|
FPGA
|
  |
| Joined: 05 May 2012 |
| Total Posts: 372 |
|
|
| 25 Jul 2012 08:26 PM |
| wat. new is a static method of Instance. |
|
|
| Report Abuse |
|
|