Vinyl Melody

FiM++ interpreter in C# (NetFiM)

Recommended Posts

oh hey this is still a thing

 

NetFiM_Banner.png.229e9e38ca67508dd1936e0a7a000bd1.png

- Version 3 -

 

Now with (hopefully) cleaner code :yay:

I just did this when I realized that classes aren't illegal to use in C#.

 

Now this supports arrays, modifying and reading an array slot!

And you can now call this as a class and re-use it (finally).

 

To use NetFiM (why would you), you'll have to add the NuGet package MoonSharp to your project.

After that, just make a reference to all "NetFiM[X].cs" to your project and add:

using NetFIM.Core;

"Why not just make it a NuGet package?" ... eh nopony will use this lol

Also, the NetFiM folder contains an example Program which you can just run.

 

 

It's still not finished when it comes to fully implementing everything that's in the documents and the wikia.

And there's still missing features such as Switch and For Loops.

 

~ Links ~

GitHub:  https://github.com/Jaezmien/NetFiM-v2

VS Code Syntax Highlighter: https://github.com/Jaezmien/NetFiM_Syntax

 

FiM++ Wikia: http://fimpp.wikia.com/wiki/FiM%2B%2B_Wiki

Language Specification: https://docs.google.com/

 

-- Old Post --

Spoiler

this is just a little thing i decided to do so i can brush up on my c# knowledge
it's stable enough that it can run the example codes that i've found on the wiki, deviantart and the google drive document (though some needed modifications).

if anypony's interested/curious or brave enough to look at my code and try to improve it, here's the Github repository link.
(also here's a Visual Studio Code syntax highlighter)

and here's info about FiM++
FiM++ Wikia
[Google Drive] Language Specification

and of course, a download link. (not stable!!1!)


criticism/feedback is welcome /)

 

Edited by Vinyl Melody
Update

Share this post


Link to post
Share on other sites

I liked how aggressive some of your comments are. I can't say I can approve of your sudden use of gotos at program.cs:476, but I'll give it a pass because it looks like you may have been edging on insanity in a few spots there. ^_^

I didn't know about moonsharp before, but it looks like a pretty useful tool. If I need something dynamic in C# like you did, I typically pull in Roslyn to compile dynamically generated C#Script. I'm not sure if there may or may not be any memory leaks there, I know I have to be careful when I do that stuff with Roslyn.

Overall though, nice work! Looks like a pain of a project. I've never been a fan of parsing text.

Share this post


Link to post
Share on other sites
Badges

i did it

i made a better version of it

 

i dont want to touch this project anymore :D

Anyway, it's now in a better shape where I'm comfortable with it now. Arrays are now supported, arithmetic is now also supported, and the code is now maintained in a clean(ish) way where executing a report is done inside a class. This might be the last time I do anything with FiM++ since it's hard doing something like this on a dead project.

Spoiler

next project might contain a certain pink pony on an unexpected "game engine"

its taking me a long time to do but it's 40% done

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.