giovedì 1 dicembre 2011

C# Sfida a 250 byte

Ed ecco che prima di natale mi passa per la testa questa malsana idea, ammetto l'originale non è mia, ma è una cosa che mi ha sempre gasato.

La sfida è semplice semplice scrivere un programma in soli "250 byte" ossia il [file.cs] deve essere di 250 byte.

L'applicazione deve :
presentare un form secondo queste specifiche:
->Aprire e leggere e mostrare un file.
->Avere almeno un EventHandler Gestito.
->Non andare in errore.
->Mostrare il testo fisso "POI" ( point of interest )

L'applicazione deve essere in un solo file ( la cui lunghezza massima è di 250 byte )
deve essere compilabile, e naturalmente funzionante.

L'applicazione può usufruire delle librerie standard del framework e non di terze parti.

L'applicazione può essere fatta o in c# o in vb.Net.

L'applicazione deve rendere fruibile il file letto.

Prima di partire c'e' qualcuno che ha altre regole ?

Qui sotto il log e le considerezioni chi tecnicamente sta già partecipando...
Saranno pubblicate sole le versioni che rientreranno nell corrette caratteristiche.

----------------------------------------------------------------------------------
Fabio Arosio

Dopo una prima prova (dove ho limato davvero il limabile) direi che 250 forse sono davvero pochi ... quindi estendiamo almeno a 500 byte.

----------------------------------------------------------------------------------
Fabio Arosio

Raccolta del primo giorno :
- FDI grp 313b versione I ( minimo )

- V.Simone 450b versione II
- A.Fabio 440b versione III
- A.Fabio 413b versione IV

Secondo me i 313b sono davvero irraggiungibili... !

----------------------------------------------------------------------------------
Fabio Arosio

- FDI grp 292b versione II ( nuovo minimo )

Come smentirsi da solo !

----------------------------------------------------------------------------------
Fabio Arosio

- FDI grp 288b versione III ( nuovo minimo )

Sempre più in basso ( ma ora credo di aver proprio toccato il minimo ).


----------------------------------------------------------------------------------
Fabio Arosio

- Zocram15 277 versione I ( nuovo minimo )

E ora ?? chi riuscirà a scendere sotto questo limite ??

----------------------------------------------------------------------------------
Fabio Arosio

- Zocram15 283 versione II ( nuovo minimo )

nella versione precedente ci è stata comunicata la scomparsa del testo "poi" ..


----------------------------------------------------------------------------------
Fabio Arosio

- Zocram15 256 versione III ( nuovo minimo )

E sono sempre più curioso di vedere che cosa cavolo ha scritto in 256 byte...

cmq spedirsi un progetto intero via chat non ha prezzo !!


----------------------------------------------------------------------------------
Fabio Arosio

- A.Fabio 252 versione V ( nuovo minimo ) !! sorry !!
( sono sul filo della legalità ! )

Però funziona... !!

----------------------------------------------------------------------------------
Fabio Arosio

NON HO PAROLE !!!




----------------------------------------------------------------------------------
Fabio Arosio

V.Simone
ATTENTI ATTENTI non so se sia una bomba o una sola 200 byte !!!
RIPETO 200 byte !!
(ERA UNA BOMBA !!! )

----------------------------------------------------------------------------------
Fabio Arosio

C.Tiziano



Sempre meno sempre meno ... !!!


----------------------------------------------------------------------------------
Fabio Arosio

V.Simone



189 ( reali 187 mi sono stati comunicati due \s in più )


----------------------------------------------------------------------------------
Fabio Arosio

Abbiamo anche concorrenti esterni .. pupleDev aka c.Tiziano credo via commento
ha pubblicato anche il sorgente in Vb.Net ...
fissando il tutto a 184 byte !!



----------------------------------------------------------------------------------
Eccoci di nuovo qui ... !!

Fabio Arosio
Completamente fuori conconcorso .. perchè non prevede proprio tutto tutto pubblicherei anche questa versione da 148 byte...

using System;using System.IO;using System.Windows.Forms;class Program{static void Main(string[] a){MessageBox.Show(File.ReadAllText(a[0]),"poi");}}

Legge il file mostra un form l'evento è già gestito dalla messagebox... tuttavia già
so che questa versione non va bene !!!

La sfida rimane ancora open... !!

----------------------------------------------------------------------------------

Con oggi direi che questo capitolo si chiude... pubblicate tutti la vostra versione
come commento e questo punto che la giuria si faccia avanti !

A tutti quelli che hanno partecipato ( e che si sono divertiti nel farlo ) porgo i miei complimenti ( che magari sono poca cosa ) ma è stato davvero splendido!


Fabio!

4 commenti:

PurpleDev ha detto...

Module M
Sub Main(ByVal a() As String)
Dim s=New System.Windows.Window:s.Title="poi":AddHandler s.Loaded,Sub()s.Content=IO.File.ReadAllText(a(0))
s.ShowDialog()
End Sub
End Module

PurpleDev ha detto...

184

guesto! ha detto...

using System;using System.IO;using System.Windows.Forms;class Program{static Form f=new Form();static Label t=new Label();static void Main(string[] a){f.Click+=new EventHandler(delegate{t.Text=File.ReadAllText(a[0]);});f.Controls.Add(t);f.Text="poi";f.ShowDialog();}}

268

marcob ha detto...

176B:

namespace System.Windows.Forms{class p{event Action e;static void Main(){var x=new p();x.e+=()=>MessageBox.Show(IO.File.Exists("a")?IO.File.ReadAllText("a"):"","POI");x.e();}}}