Which Programming language are you using to create your Chatbot or AI and Why?

  • 9 Replies
  • 317 Views
*

spydaz

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 131
I would like to know which programming language or development technology are you using to create your AI/Chat-bot.


This is a common Question asked by students who are searching to break into creating a Chat bot ;

The why is very important too.
Each developer is an individual, with individual programming styles and talents. a person may choose a purist mentality or a open source / Library mentality; Some have the ability to solve problems where as other like to find the problem solved and incorporate it into their solution. 

Personally : i am a purist and use visual basic :
Because : i like to create all solutions for myself and i have always felt that the .net language is highly reDistributable.  i use all types of styles of programming from Design patterns to UML to Object oriented methods.. Plus the time period i come from basic was standard practice:

I have no objections to other programming languages ; and have recently seen many great developments and chat-bots being created with python. i think today java/Python are directions i might have taken when i was younger. although the visual development capabilities of visual studio still are hard to beat for interface development; but today nearly every language can be developed in visual studio;
I wish i had taken the C++ / C# Route as it is very akin to JAVA. I can program all these languages but choice will always be basic! <Even Halscript was VBSCRIPT.>

There are shortcuts today to AI development and Many programming languages offer many useful library's achieving problems faced by AI/NLP/ML .
even high processing requirements are no longer a problem with cloud-based development such as AZURE; 
So its wide open which language to pick :


Perhaps this should also be a poll (but people could always vote twice messing it up)

*

Freddy

  • Administrator
  • **********************
  • Colossus
  • *
  • 6345
  • Mostly Harmless
HI Spydaz, nice to have you back here :)

Interesting question. My main language of choice for my bot and my ElfScript language engine is PHP. The main reason for that is simply that I am most comfortable with it. On the technical side, briefly,  it has a lot of string handling functions, useful data storage and processing options, works fast with MYSQL and is easy to deploy on the web of course.

I also play with C# and so one day might write an engine for that so that it can be tied into video games with things like Unity which I also play with - although if the game is connected to the net it's still currently possible to use my API.

My bot initially works through fuzzy pattern matching and PHP/MYSQL is great for that. If I did something like a NN then I would probably try another langue, likely C# though.

*

ivan.moony

  • Trusty Member
  • *********
  • Terminator
  • *
  • 948
    • Structured Type System
I never had problems switching to whatever language required. I've tried a lots of them, but somehow Java made the most positive impression on me. Python also sounds fine (from tutorials), but by the time it got popular, I was finished with my educational experimenting. After that, a target audience setup always dictated my language of choice.

Now, I'm building online scientific database with advanced AI possibilities. Something like what is Wolfram Alpha for Math, but I hope to apply automatic reasoning to all the scientific fields together on a single, possibly distributed crowdsourced site. I wasn't left with a much of a choice since I need to do browser based calculations, so I have to use Javascript. I realized there were shown up some Python to Javascript and similar transpilers, but in a meanwhile, I learned to like Javascript.

As for server technology, I guess I'd pick PHP/MySQL because it is the most widespread technology, and that makes it important if I want to provide the code to third parties to spread it out to other servers. Again, the target audience dictates my tool of choice.

But for the future, I'd like to see different language transpilers to WebAssembly technology. Today, there is C++ -> LLVM -> WebAssembly implementation, but I don't like the language very much, except it's fast. Similar LLVM setups also exist for different languages, but somehow, the whole process seems awkward with the LLVM in the middle. Maybe if there were direct implementations, I'd give them a chance, as I find Javascript braking at its stitches with my performance requirements.
Dream big. The bigger the dream is, the more beautiful place the world becomes.

*

spydaz

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 131
Thanks freddy!! 8)

I must admit i find Java a nice Teaching Language!

Its very good for demonstrating coding techniques!

I find it great for design patterns / and other Object oriented approaches. as well as its great transport-ability!
 

*

Freddy

  • Administrator
  • **********************
  • Colossus
  • *
  • 6345
  • Mostly Harmless
Yes I liked Java too, I was playing with it when Dr Wallace came up with that AskMom app, so that was some time ago now. It did seem easy to learn (with the benefit of knowing other languages). I'd like to make a chatbot app for ElfScript some time in Java one day for Android.

PHP has some object oriented features, like classes etc, which I decided to learn how to use properly with my engine. There's other things that I could do with it but I am on a lengthy break from programming at the moment. But yes in terms of organised code, OOP really does help a lot.

*

infurl

  • Trusty Member
  • *******
  • Starship Trooper
  • *
  • 479
  • Humans will disappoint you.
    • Home Page
C

KISS

*

unreality

  • Starship Trooper
  • *******
  • 270
  • SE, EE, physicist, artist. Secret to creating AGI.
My AI is in c because it gives the fastest & smallest code possible without diving into machine language.

One of these days I'll take it to the next level & hard-code as much of it as possible on a FPGA chip (or whatever the best option will be), at least the tree search, and connected it to as many RAM modules in parallel as possible, but can't imagine taking on such a mega project for at least 5 years.

ASIC would be hundreds of times better than FPGA, but that takes tens of millions of dollars. A few hobbyist have built their own semiconductor chip manufacturing hardware, caveman style chips, usually greater than ~10um (10000nm) feature sizes.

*

Snowman

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 145
    • minervaai.com
I think you know my preference Spydaz  ;) 

Well, I know that in reality most languages are made to get the job done. They just have different ways to get there. I like VB because it makes it easier for me to manage tens of thousands of lines of code. Of course, most OOP languages can do that. I also like the way the syntax looks. It looks more organized because of the need of a carriage return instead of the open and closed curly bracket. VB language may not be as powerful as C, but that's ok with me. Its strong enough. I guess, like with any language, whatever the person knows best tends to be the one they prefer.

I ended up making an XML interpreter using VB a few years ago. It makes me wonder if one could make their own language interpreter. Of course, it probably should be written in machine code, or perhaps in C, but that would be an interesting project. What would your perfect language look like? Would it include curly brackets? Perhaps it could be a joke language, for instance, forcing the programmer to make every string variable be declared by a prefix of 'this_is_a_string'. Or maybe not..  ^-^

*

spydaz

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 131
I love the syntax of VB Too ...... All these Statics and voids..... makes the code unreadable;

Syntax is so important when designing a language; I was designing a compiler and Found it actually Quite hard. Visual basic is written in C, as most of windows was also written in C / As Microsoft brought MS_DOS Which was also written in C. The source code for VB/C# Is available on Microsoft now.
I was quite amazed at the way they designed the languages / Although BASIC was around at the same time as C .
It gave me an understanding of how to restructure my AI Language;

Its very hard for somebody to use your program / to write modules for your app or even collaborate as don Patrick said , Exactly why there are so many videos on Numpy / Sck-learn ; But by creating an interim DLL you can "BUBBLE UP" the command into the DLL referencing where it was created. by doing this for all of the commands etc in the app. the access point is the one DLL..... enabling for one DLL to be added to a project which references all the lower DLL in the project ..... exactly how Microsoft did it! with the SYSTEM namespace. now all those badly name functions and sub which only you know about can be named correctly in this module..... Also all your Extensions can be in the same place!

As they say "you cant re-invent the wheel" - But then Whats Python ?




*

spydaz

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 131
Hmm...

The reality is probably a lot of people DON'T program....