gamletanker

2005-01-29

D-BUS i Nemerle

Hadde lyst til å teste D-BUS litt så hvorfor ikke samtidig få testet Nemerle tenkte jeg da. Så er her koden til en liten server og klient med utgangspunkt fra D-BUS sitt eget C# eksempel.

echoer.n - svn


using System;
using DBus;

namespace Senikk.DBus
{

[Interface("com.senikk.DBus.Echoer")]
public class Echoer
{
[Method]
public virtual Echo (message : string) : string
{
Console.WriteLine ("Received: " + message);
"Reply: " + message
}

[Method]
public virtual Length (message : string) : int
{
Console.WriteLine ("Received: " + message);
message.Length
}
}
}


server.n - svn

using System;
using DBus;
using Gtk;

namespace Senikk.DBus
{
module Server
{
Main () : void
{
Application.Init ();

def connection = Bus.GetSessionBus ();
def service = Service (connection, "com.senikk.DBus");
def echo = Echoer ();
service.RegisterObject (echo, "/com/senikk/DBus/Echoer");

Application.Run();
}
}
}


client.n - svn

using System;
using DBus;

namespace Senikk.DBus
{
module Client
{
Main () : void
{
def connection = Bus.GetSessionBus ();
def service = Service.Get (connection, "com.senikk.DBus");
def echo = service.GetObject (typeof (Echoer), "/com/senikk/DBus/Echoer") :> Echoer;

Console.WriteLine (echo.Echo("Senikk says hello in DBus using Nemerle!!"));
Console.WriteLine (echo.Length("Length of this text"));
}
}
}


Som en kan se så er det ikke så store forskjeller på disse små eksempelene iforhold til C#. Men du skriver såfall mindre kode i Nemerle for å få gjort det samme siden du slipper å skrive type C#: Connection connection = Bus.GetSessionBus(); Nemerle: def connection = Bus.GetSessionBus(); og så slipper du å skrive return. Casting måtte jeg lete litt etter hvordan en gjorde i Nemerle, C#: etter = (Echoer) Nemerle: :> Echoer på slutten av def linjen.

2005-01-26

Et lite Gtk# program i noen .NET språk



C#


using System;
using Gtk;

public class GtkTest
{
public static void Main()
{
Application.Init ();
Window Win = new Window ("Hello!!!");
Button Btn = new Button ("Test");
Win.Add (Btn);
Win.ShowAll ();
Application.Run ();
}
}


VB.NET

Imports System
Imports Gtk

Module GtkTest
Sub Main()
Dim Win as Window
Dim Btn as Button

Application.Init ()
Win = new Window ("Hello!!!")
Btn = new Button ("Test")
Win.Add (Btn)
Win.ShowAll ()
Application.Run ()
End Sub
End Module


Nemerle

using System;
using Gtk;
using Application = Gtk.Application;

public class GtkTest
{
public static Main () : void
{
Application.Init ();
def Win = Window ("Hello!!!");
def Btn = Button ("Test");
Win.Add (Btn);
Win.ShowAll ();
Application.Run ();
}
}


Kompilert utgave

C# 3072bytes
VB.NET 2560bytes
Nemerle 2560bytes


Så er det store spørsmålet hva gjør mcs anerledes enn mbas og ncc som gjør at C# utgaven blir større? *Gruble* Og for ordens skyld VB.NET og Nermerle utgavene er ikke helt like selv om de har lik størrelse.

Nemerle er forresten et C# lignende språk for .NET

2005-01-23

Gledelig overrasket over diNovo i Linux


Jeg tenkte først at jeg skulle vente til jeg hadde fått opp den nye hovedmaskinen før jeg tok i bruk diNovo pakken (bluetooth tastatur, mediapad og mus) da jeg egentlig ikke hadde tid nå til å styre med drivere og den slags og jeg jeg hadde jo testet at dem virket under OSX. Men ombestemte meg og plugget inn bluetooth huben og trykte på "connect" på dem. Alt det grunnleggende virket under Linux uten å gjøre noe som helst mer :-D Det var faktisk lettere å få til å virke i Linux enn i OSX så lett at selv bestemor skulle ha klart det :-) Men det gjenstår noe som f.eks. å utnytte lcd displayet på mediapaden samt å utnytte spesielle knapper som finnes.

2005-01-18

Datasystemer anno 2005

I den siste ukes tid har jeg kommet over såfall to artikler som viser at bedrifter her i landet anno 2005 sitter med håpløse datasystemer. Helt utrolig spørr du meg.

a) Økokrim
Økokrim ikke oppdatert
Når banker skal sende hvitvaskingsmeldinger til Økokrim må dette gjøres på gamlemåten med faks eller rekomandert brev slik at Økokrim manuelt kan taste de samme tingene inn i sitt gamle utdaterte system. Latterlig!! Og dette betaler vi skattebetalere for at to ansatte skal gjøre en helt unødvendig jobb som i tillegg kan føre til feil. Hvem er det som har det øverste ansvaret for Økokrim? Odd Einar Dørum eller?

b) Telenor
ADSL-tabbe
Hos Telenor er det tydeligvis ikke noen som helst sammenheng mellom fakturering og levert vare. Her burde de hatt system som fanget opp at det ble betalt for en vare som ikke ble levert. De fleste er nok heldigvis oppgående nok til å sjekke hva en betaler for. Egentlig så er denne saken på samme linje som de svindlerene som sender ut fakturaer som de håper bedrifter uten god nok kontroll betaler. Så kallenavnet Stjelenor holder seg godt i hevd ja.

2005-01-12

Apple - Mac mini

Med denne nye Mac mini som nettopp er blitt lansert så blir en såfall ikke fattig for å ta del i Mac verdenen slik det en gang var for lenge lenge siden.

Apple - Mac mini

2005-01-10

Hva er så unikt med U3?

I Linux blir jo f.eks. en usb pinne bare mountet som en hvilken som helst annen form for lagringsenhet. Så mitt store spørsmål er da, er det normalt umulig å kjøre programvare i Windows fra en usb pinne??

I Linux verdenen så har det lenge vært mulig å kjøre en komplett spesial laget Linux distribusjon fra en slik lagringsenhet som vist med noen eksempler nedenfor. Ja det hadde vel ikke vært mye plass igjen om en skulle prøvd det med Winshit, hehe.

Hvilke hardware støttefunksjoner er det her snakk om for U3? Og kan de være nyttige for Linux på en eller annen måte? Må visst lese litt spesifikkasjoner nå ja....

Flash Linux distroer
Flashlinux - Gentoo basert :D
Damn Small Linux
Feather Linux

U3
U3
Kjør programvare direkte fra USB-minne

En måned til NM

Om jeg har talt riktig nå så har jeg vel tilbragt fra torsdag til søndag hele 17 timer på øvelse i Stangaland Brass. Mye sier du? Tja kanskje det. Så du kan trygt si vi er godt i gang med NM oppkjøringen vår. NM stykket surrer fremdeles i hodet mitt nå ja kanskje ikke så rart, hehe må prøve å tenke på de rolige partiene når jeg skal legge meg tror jeg, hihi. Korpset har definitivt utviklet seg i positiv retning de siste årene. Bare for et par år tilbake vurderte vi å bruke nøyaktig samme stykket som nå skal brukes, men den gang ble det ansett for å være for uoverkommelig for korpset vårt å spille. Mens Stangaland Brass anno 2005 kunne allerede nå en måned før NM forsåvidt kunne brukt det på en konsert. Men det er mange harde konkurrenter som skal slås så jeg håper jo at alle inklusive meg selv øver hver dag fremover nå (konkurentene våre kan legge instrumentene sine på hylla ;) slik at vi også kan spille med solid overskudd. Håper flest mulig stikker innom å hører på oss i Grieghallen. Brassnerden har våknet og begynner så smått allerede nå å glede seg :D

2005-01-08

Sjuåring banker Robbie og Kylie ut av hitlisten

Kjære korpsvenner slå meg hardt i hodet visst jeg begynner å spille denne på hornet mitt, hehe :D ich bin Schnappi, das kleine Krokodil.....

Sjuåring banker Robbie ut av hitlisten
Teksten
Hjemmesiden

2005-01-06

Nye maskiner er bestillt

Har bestillt meg ikke mindre enn to stk AMD64 maskiner med blant annet Raptor disker, stillegående strømforsyning, skikkelig cpu-kjøling mm. mao ikke spart så veldig mye kan du si.

Den ene maskinen skal bli den nye serveren her i huset, har planlagt litt av hvert her. Her blir nok stangaland.no sitt nye "hjem" også, men jeg frykter at jeg må fikse på noe av den gamle php koden for at alt skal kjøre fint på noe nyere versjoner av apache/php.

Hvilket OS skal jeg så kjøre på serveren mon tro, har ikke helt klart å bestemme meg nemmelig, men har nå noen dager til før alt har blitt levert.
Bra ting ikke kommer helt enda for jeg hadde ikke hatt tid til det for nå er det øvelse med Stangaland torsdag, fredag, lørdag og søndag NM NM NM :-)

Skal bli kjekt med noen forhåpentligvis stillere maskiner enn dem som surrer her nå slik at det blir levlig å gjøre noe som helst her og ikke minst at kompileringer bør gå en god del kjappere :D Har også planer om noe fpga design og det pleier å kreve sine ressurser ja.