Re: Programming language that accessable for the blind

For one, BGT is ***not*** a programming language, so stop categorizing it as such. If it was, I think it would be far more widely known to the entire world than it currently is, and it would be regularly maintained (and have a lot more functionality). As it currently stands, BGT is a scripting language (and the file extension description even says so), and that's it for it. Second, VB.NET and/or VB is easy to use, although I don't like the VB6 IDE... at all. Third, @tabutcu, you are slightly wrong on your first point in that if you want to use VB you have to know it. That is implicitly implied and there is no reason to state it unless you are clarifying it. To do anything--absolutely anything--you have to know how to do it. The same concept applies here.
Finally, @danang137, Visual BASIC is completely accessible. You need to download Visual Studio, not some old, dilapidated version of visual basic. Visual Studio will take a looooooooooooooooooooooooooooooooooooong t ime to install, I admit, but it's well worth the wait. And your getting quite ambitious with your ideas, too. Antivirus programs are very difficult to create (although not as hard as building an operating system kernel), but media players are easily done. Before you get ahead of yourself, though, learn the language first. All programming languages are accessible in the meaning that we all mean when we say that something is accessible. All of them. We probably won't be able to write all of them (take APL, for instance), or we may not like them (0815, 360 Assembly, 4DOS Batch, 6502 Assembly, 6800 Assembly, 8086 Assembly, and 8th come to mind), but they all are accessible. The only one that I can see you guys having trouble with is the Whitespace programming language. A hello world in that looks like:

Say hello.   
                
                
                      
                 
                      
                    
                      
                  
                            
                     
                  
                     
            
                        
                            
                   
                            
                      
                      
                      
                      
                         
                   
                      
            
                         
                            
                         
                      
                            
            
                    
                         
                       
                   
                       
                   
                          
                      
                       
                      
                          
                         
                          
               
                             
    
             

                                                                                                               

                                                                                                                                                             




                                                     
       
    

                                                                                                            
 
              
 
                                                                                                                                                                                                     
    
         
       
 
                                                                                                          

                                                                                                                                                                                                  
 

 


    

                                                                            
 
  
     
                  
              
          
                                                                                                                                                                     
 

       
       
 
                                                                          

                                                                                                                                                                  
 

       
           
         
    

                                                                                                                                                          
             
                
    
      
  
    

However, things get easier:
Hello world in:
Action Script:

trace("Hello world!");

Ada:

with Ada.Text_IO; use Ada.Text_IO;
procedure Main is
begin
  Put_Line ("Hello world!");
end Main;

ALGOL W:

begin
    write( "Hello world!" )
end.

etc. Or hello world with a web server:
C# without NancyFX:

using System.Text;
using System.Net.Sockets;
using System.Net;

namespace WebServer
{
    class GoodByeWorld
    {        
        static void Main(string[] args)
        {
            const string msg = "<html>\n<body>\nGoodbye, world!\n</body>\n</html>\n";        
            const int port = 8080;
            bool serverRunning = true;

            TcpListener tcpListener = new TcpListener(IPAddress.Any, port);
            tcpListener.Start();

            while (serverRunning)
            {
                Socket socketConnection = tcpListener.AcceptSocket();
                byte[] bMsg = Encoding.ASCII.GetBytes(msg.ToCharArray(), 0, (int)msg.Length);
                socketConnection.Send(bMsg);
                socketConnection.Disconnect(true);
            }
        }
    }
}

Or with it:

namespace Webserver
{
  using System;
  using Nancy;
  using Nancy.Hosting.Self;

  public class HelloWorldModule : NancyModule
  {
    public HelloWorldModule()
    {
      this.Get["/"] = parameters => "Goodbye, world!";
    }

    public static void Main()
    {
      var uri = new Uri("http://localhost:8080");
      using (var host = new NancyHost(uri))
      {
        host.Start();
        Console.WriteLine("Web server is now running!");
        Console.WriteLine("Press 'Enter' to exit.");
        Console.ReadLine();
      }
    }
  }
}

Or in Go (I think this is the simplest HTTP hello world):

package main

import (
  "fmt"
  "log"
  "net/http"
)

func main() {
  http.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) {
    fmt.Fprintln(w, "Goodbye, World!")
  })
  log.Fatal(http.ListenAndServe(":8080", nil))
}

Or, in rust, one of the safest programming languages out there:

// Basically no error handling. This web server will simply panic if there is any sort of error. 
use std::net::{Shutdown, TcpListener};
use std::thread;
use std::io::Write;

const RESPONSE: &'static [u8] = b"HTTP/1.1 200 OK\r
Content-Type: text/html; charset=UTF-8\r\n\r
<!DOCTYPE html><html><head><title>Bye-bye baby bye-bye</title>
<style>body { background-color: #111 }
h1 { font-size:4cm; text-align: center; color: black;
text-shadow: 0 0 2mm red}</style></head>
<body><h1>Goodbye, world!</h1></body></html>\r";


fn main() {
    let listener = TcpListener::bind("127.0.0.1:8080").unwrap();

    for stream in listener.incoming() {
        thread::spawn(move || {
            let mut stream = stream.unwrap();
            match stream.write(RESPONSE) {
                Ok(_) => println!("Response sent!"),
                Err(e) => println!("Failed sending response: {}!", e),
            }
            stream.shutdown(Shutdown::Write).unwrap();
        });
    }
}

Have fun, yall coders!

_______________________________________________
Audiogames-reflector mailing list
Audiogames-reflector@sabahattin-gucukoglu.com
https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
  • ... AudioGames . net Forum — Developers room : danang137 via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : kyle12 via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : tabutcu via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : daigonite via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Ethin via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Hrvoje via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : tabutcu via Audiogames-reflector

Reply via email to