Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I was planning on learning a way to create my own programming language and I wanted to know what language to write a compiler with. C? C++?
Windows Vista and newer come with the .NET Framework installed by default. That in turn already provides a compiler for the .NET languages (most notably C# and VB.NET). It's the only provided language you could possibly write an efficient compiler in. Other languages are VBScript and JScript (via windows Scripting Host) and batch files, so nothing you'd really want to implement more complicated stuff in.
Depending on the complexity of the language you want to create, a C++ implementation may provide better performance, though. No offense, but you don't quite make the impression that you really know how to implement a compiler for a new language. Greg Hewgill's link should give you some starting points there. The thing is, creating a new (formal) language is anything but a trivial task. Yes, the tools to do it are free, and so is the knowledge. But you should really already have a solid understanding of the programming language you want to write the compiler or interpreter in before even attempting to do it.
I suggest you use C#; DLR is great for this purpose.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
ooREXX is a scripting language produced by IBM for OS/2. It is also available for various operating systems: Linux, Solaris, Windows. I just want know what are the benfits of ooREX compared to other scritping langunages such as Shell or windows powershell?
I have never heard of the language 'Shell' so cannot comment on that. Windows Powershell is windows only and although powerful is, apparently, a bit of a beast to learn.
OORexx is not from IBM, it is from the Rexx Language Association. It originated in IBM as ORexx, which itself was developed from Rexx (now referred to as Classic Rexx), but was released to Rexx L.A. who now maintain and enhance it (as OORexx). It is simple to use but powerful. It is also cross-platform. And you do not have to use the OO features - the interpreter will generally execute 'classic' Rexx programs without change.
I would not call it a scripting language - it is a general purpose programming language. I have written a text editor in it as well as standard application programs. In fact I hardly use it as a scripting language.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I'm just asking because very big companies such as Apple, Facebook or Electric Arts do not use it. And also I have another question: Is it good to learn Visual Basic or languages such as C, C++, Java, ect?
Thanks.
VB has many different versions and I would say not to bother learning VB6 but VB.Net would be good if you want to stay with VB (though I prefer C#). Just like any programing language the older it is the less a particular version gets used. I have a worked at a few companies that have most products in .Net but still a few legacy apps in VB6.
As for which to learn that is up to you, I recommend figuring out what kind of software you want to write and then learn what language is used the most for that.
There are definitely more jobs for what has become mainstream languages such as C++ or Java. Personally my first exposure to programming was VB and bash, so it really depends on why you want to learn a certain language.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I'm planning to make a simple program which will basically web scrape and provide that information into a simple gui.
There'll be notification for new info, and a simple database to store history, favorite and such
What programming language is suitable/good for simple task like this? And can you please give a starting point about making the program?
I'm currently only using python, trying to find out how to make the gui. If anyone can give some resources, it'll be super usefull.
It would be best if you pick the programming language you know best.
Since you mentioned Python, you could use PyGTK, wxPython or similar GUI frameworks for Python.
I would personally do it in C# since the GUI designer in Visual Studio is one of the best I've used, but this is entirely up to you.
The choice of language depends on your experience with each language: In C++ it takes time, in Python it might be uncomfortable and in C# it might be hard to get it running on other platforms.
SQLite would be an excellent choice for the database. It is easy to set up and use in any language.
Links:
http://www.wxpython.org/
http://www.pygtk.org/
https://sqlite.org/
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
I'm a IT student in the university, been programming in Visual Basic for a great time. Learnt Java here and C# by myself(really analog to Java). I am also a music producer, and I want to start working on a large project, just for myself, for fun and for expanding my knownledge.
I want to make a DAW (Digital Audio Workstation) like Cubase, Reaper or Fruity Loops. Starting from small things like a Sound Sequencer. I already have some flow diagrams made.
I want to start coding it as soon as possible, but Java is an interpreted language as SuperCollider and Python, making it slow for processing. Visual Basic is not an option, I loved starting with it, but I don't like it anymore. I don't know if I should use C#, I, as a Linux lover, don't want to marry with Windows just because I need to use Visual Studio. I know there is Mono.
What is a good language for me? Could it be something:
Fast processing, non interpreted if its possible
Able to make my software crossplatform. Without the need of rewriting all the code, maybe just implementing some methonds for different systems.
With good documentation.
I know my question may be a little complicated, even can be seen as inmature. But I need help choosing a new language to learn.
Thanks for taking your time reading this. Every answer is appreciated.
Take a look at Juce, which is written in C++.
I know that one very popular DAW is written with Juce. C++ has the added bonus that it is powerful and portable.
Extempore is fast and very cool. It's a pretty new project, but it's been used for some very cool things.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
i'm thinking about programming a tool that would be useful in windows and mac (as we use those at work) and it's 100% necessary that is inside on a OS window.
The first thing that came to my mind was to use java - as it's cross platform - but, is there any alternative to program cross platform window based programs?
Has anyone tried to use C# windows forms with Mono in other OS's?
I'm interested in a garbage collected language if possible as I don't want to think about possible memory leaks for a tool that can be slower or faster without any trouble.
Also if it's possible to be as easy as it is in visual studio + C# it would be awesome!
Any idea will be appreciated, thanks!
Java is fine if you're comfortable with it.
Many languages have bindings to cross-platform toolkits: for example Python is very pleasant and has PyQt4 or WxPython, both of which can be used to make GUIs which work nicely on Windows or Mac.
In the manage-your-memory world, using Qt from within C++ is actually very pleasant (they have a nice API). I find it creates more elegant applications than my Java code (they feel a tad more native) though YMMV.