3. ¡°Computers that learn in unsupervised
ways and don't need to be told what to
do in advance is the next phase of
computer science¡±
Steve Wozniak , Apple co-founder
What is Selfprogramming ?
4. This presentation describes AI-based technology capable to generate
new applications from natural language interaction
It is possible for a computer to write its own applications ?
Selfprogramming
11. /// <summary>
/// Classe pour la compilation et l¡¯ex¨¦cution dynamique du
code g¨¦n¨¦r¨¦
/// </summary>
public class CSharpCompiler
{
public bool Compile()//true if successful
{
bool success;
this.AssembleCode();//convert the data structures to
this.code
//compile class into assembly
CSharpCodeProvider codeProvider = new
CSharpCodeProvider();
ICodeCompiler compiler = codeProvider.CreateCompiler();
return success;
}//Compile()
}
Use Case 1 : #selfprogramming
12. Use case 2 : VIKI : AI-based personal assistant
JAVA on Android Studio 8
public void neuron_speakOut(String text) {
tts=new TextToSpeech( this,
new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
if(status != TextToSpeech.ERROR)
{
int result = tts.setLanguage(Locale.US);
if (result == TextToSpeech.LANG_MISSING_DATA ||
result == TextToSpeech.LANG_NOT_SUPPORTED)
{
lmessage_viki = "This Language is not supported";
Log.e("TTS", lmessage_viki);
//Toast.makeText(this, lmessage_viki ,
Toast.LENGTH_LONG).show();
}
}
}
});
tts.speak(text.toString(), TextToSpeech.QUEUE_FLUSH, null);
}
Natural language Interaction
App that learns from few behaviors and generate new knowledge , new behaviors in unknown
situations.