Milloin muuten tutustuitte ensimmäisen kerran tietokoneohjelmointiin?

Anonyymi

Millaisia kokemuksia, ensimmäinen tehokas kääntäjäni ohjelmoinnissa oli microsoftin quickC, huomatavan paljon nopeampi koodissaq kuin kilpailea ruboC :D

74

1323

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      10-vuotiaana, kieli oli GW-BASIC, käyttöjärjestelmä MS-DOS ja tietokone 8086.

      • Anonyymi

        Ja toisena kielenä oli sitten assembly. COM-tiedostoja oli kiva tehdä MS-DOS:ssa kun ei tarvinnut mitään ylimääräistä kuten EXE:ssä, pelkkä koodi.

        Ja oli hauskaa kun ohjelma oli jotain 1000 kertaa nopeampi kun kirjoitti GW-BASIC ohjelman assemblyllä.

        Ei ollut myöskään mitään häiritseviä muistinsuojauksia - kaikki muisti oli suoraan ohjelman käytettävissä.


      • Anonyymi
        Anonyymi kirjoitti:

        Ja toisena kielenä oli sitten assembly. COM-tiedostoja oli kiva tehdä MS-DOS:ssa kun ei tarvinnut mitään ylimääräistä kuten EXE:ssä, pelkkä koodi.

        Ja oli hauskaa kun ohjelma oli jotain 1000 kertaa nopeampi kun kirjoitti GW-BASIC ohjelman assemblyllä.

        Ei ollut myöskään mitään häiritseviä muistinsuojauksia - kaikki muisti oli suoraan ohjelman käytettävissä.

        Minulla oli Basicin jälkeen myös assembly, suorituskykysyistä.

        Hullua touhuahan se assembly oli. Optimoiva kääntäjä kun on keksitty.


      • Anonyymi
        Anonyymi kirjoitti:

        Minulla oli Basicin jälkeen myös assembly, suorituskykysyistä.

        Hullua touhuahan se assembly oli. Optimoiva kääntäjä kun on keksitty.

        Ei ne kääntäjät optimoineet mitenkään 80-luvulla.


      • Anonyymi
        Anonyymi kirjoitti:

        Ei ne kääntäjät optimoineet mitenkään 80-luvulla.

        Optimoivat kääntäjät keksitiiin 70-luvulla jom ja ihan normi kääntäjissä lisäilivät optimointeja 80-luvulla.

        Eli assemblyn hinkkaus oli suurimmaksi osaksi ajan hukkaa kun sen ajan olisi voinut käyttää tekemään ohjelmaa, ja antaa kääntäjän optimoida.

        Eikä silläkään väliä ole vaikka heti ei olisi kaikkia optimointeja. Ohjelmat nopeutui ilman että itse näkisi vaivaa päivittämällä kääntäjää ja tietokonetta, ja kääntämällä koodin uusiksi.


      • Anonyymi
        Anonyymi kirjoitti:

        Optimoivat kääntäjät keksitiiin 70-luvulla jom ja ihan normi kääntäjissä lisäilivät optimointeja 80-luvulla.

        Eli assemblyn hinkkaus oli suurimmaksi osaksi ajan hukkaa kun sen ajan olisi voinut käyttää tekemään ohjelmaa, ja antaa kääntäjän optimoida.

        Eikä silläkään väliä ole vaikka heti ei olisi kaikkia optimointeja. Ohjelmat nopeutui ilman että itse näkisi vaivaa päivittämällä kääntäjää ja tietokonetta, ja kääntämällä koodin uusiksi.

        Ok. Tuo on sinun mielipide. Ymmärtääkseni assembleria käytettiin 80-luvulla juuri siksi että pystyi tehostamaan muistinkäyttöä ja optimoimaan prosessorin käyttöä. Jos olen väärässä niin silloin miljoonat assembler-koodaritkin olivat ja sinä olit oikeassa?


      • Anonyymi
        Anonyymi kirjoitti:

        Ok. Tuo on sinun mielipide. Ymmärtääkseni assembleria käytettiin 80-luvulla juuri siksi että pystyi tehostamaan muistinkäyttöä ja optimoimaan prosessorin käyttöä. Jos olen väärässä niin silloin miljoonat assembler-koodaritkin olivat ja sinä olit oikeassa?

        Ja hakusanalla "is assembler better than compiler" löytyy monia mielipiteitä.


      • Anonyymi
        Anonyymi kirjoitti:

        Ok. Tuo on sinun mielipide. Ymmärtääkseni assembleria käytettiin 80-luvulla juuri siksi että pystyi tehostamaan muistinkäyttöä ja optimoimaan prosessorin käyttöä. Jos olen väärässä niin silloin miljoonat assembler-koodaritkin olivat ja sinä olit oikeassa?

        Sanoin että itsekin aloitin Basicin jälkeen hinkkaamaan assembleriä mutta olenkin nykyään fiksumpi. Tuo oli suurimmaksi osaksi hukkaan heitettyä aikaa koska softa tekee saman.

        Niin muistin kuin prosessorin käytön tehostaminen onnistui ihan hyvin korkean tason kielellä, ja päivittämällä kääntäjää ja tietokonetta saatiin tehostus suorituskykyyn ilman koodin kirjoittamista.

        Ja mistä tietää assemblerin hinkkaajat oli väärässä?

        No siitä että niitä assembler pökäleitä ei käytetä missään. Sen sijaan 80-luvulla kirjoitettuja C-kielisiä ohjelmia on ylläpidetty ja käytetään edelleen ja olivat aikoja sitten nopeutuneet nopeammaksi kuin assemblerviritykset.


      • Anonyymi
        Anonyymi kirjoitti:

        Sanoin että itsekin aloitin Basicin jälkeen hinkkaamaan assembleriä mutta olenkin nykyään fiksumpi. Tuo oli suurimmaksi osaksi hukkaan heitettyä aikaa koska softa tekee saman.

        Niin muistin kuin prosessorin käytön tehostaminen onnistui ihan hyvin korkean tason kielellä, ja päivittämällä kääntäjää ja tietokonetta saatiin tehostus suorituskykyyn ilman koodin kirjoittamista.

        Ja mistä tietää assemblerin hinkkaajat oli väärässä?

        No siitä että niitä assembler pökäleitä ei käytetä missään. Sen sijaan 80-luvulla kirjoitettuja C-kielisiä ohjelmia on ylläpidetty ja käytetään edelleen ja olivat aikoja sitten nopeutuneet nopeammaksi kuin assemblerviritykset.

        En minäkään nykyään asembleria käyttäisi koska kääntäjä on niin kehittynyt. 80-luvulla asia oli toisin. Optimointi oli tehokkainta assemilla.


      • Anonyymi
        Anonyymi kirjoitti:

        En minäkään nykyään asembleria käyttäisi koska kääntäjä on niin kehittynyt. 80-luvulla asia oli toisin. Optimointi oli tehokkainta assemilla.

        Pointti siis oli se, että softassa riitää yleensä läjäpäin bugeja korjettavaksi, testejä kirjoitettavaksi, toteuttaa puuttuvia ominaisuuksia, optimoida koodia algoritmitasolla, siirtää vaiheittain uudemmalle tekniikalle että siinä vaiheessa kun voisi alkaa optimoida nopeammaksi implementaatiotasolla, se nopeutus tapahtuukin ilman vaivannäköä päivittämällä kääntäjää tai tietokonetta.

        Kyllä sillä assemblerin hinkkauksellakin ollut paikkansa mutta melkoisen vähän oikeastaan. Useimmissa asioissa kääntäjän tuottama koodi ratkoo ongelman nopeammin kuin että käyttäisi aikaa assemblerin hinkkaukseen, että laskisi nopeammin. Se assembler optimointi kun kuitenkin vie aikaa.


      • Anonyymi
        Anonyymi kirjoitti:

        Sanoin että itsekin aloitin Basicin jälkeen hinkkaamaan assembleriä mutta olenkin nykyään fiksumpi. Tuo oli suurimmaksi osaksi hukkaan heitettyä aikaa koska softa tekee saman.

        Niin muistin kuin prosessorin käytön tehostaminen onnistui ihan hyvin korkean tason kielellä, ja päivittämällä kääntäjää ja tietokonetta saatiin tehostus suorituskykyyn ilman koodin kirjoittamista.

        Ja mistä tietää assemblerin hinkkaajat oli väärässä?

        No siitä että niitä assembler pökäleitä ei käytetä missään. Sen sijaan 80-luvulla kirjoitettuja C-kielisiä ohjelmia on ylläpidetty ja käytetään edelleen ja olivat aikoja sitten nopeutuneet nopeammaksi kuin assemblerviritykset.

        Siinä se on taas oikein aasintuntija. Assembly -kieltä on käytetty erittäin paljon ja käytetään edelleen etenkin sulautettujen järjestelmien ohjelmoinnissa. Assemblyä on aina käytetty tilanteissa, joissa on ollut rajalliset resurssit käytettävissä tai on tarvittu aikakriittistä koodia. Sulautetut järjestelmät on vain yksi, mutta erittäin tärkeä esimerkki siitä. Eli jospa olisit suoltamatta mitään potaskaa Assemblyyn liittyen. Niin ja kaikille tiedoksi, kieli on nimeltään Assembly, ei Assembler.


      • Anonyymi
        Anonyymi kirjoitti:

        Siinä se on taas oikein aasintuntija. Assembly -kieltä on käytetty erittäin paljon ja käytetään edelleen etenkin sulautettujen järjestelmien ohjelmoinnissa. Assemblyä on aina käytetty tilanteissa, joissa on ollut rajalliset resurssit käytettävissä tai on tarvittu aikakriittistä koodia. Sulautetut järjestelmät on vain yksi, mutta erittäin tärkeä esimerkki siitä. Eli jospa olisit suoltamatta mitään potaskaa Assemblyyn liittyen. Niin ja kaikille tiedoksi, kieli on nimeltään Assembly, ei Assembler.

        Mikään ei estä tekemästä softaa rajallisilla resursseilla tai aikakriittistä koodia käyttämällä kääntäjää, että saa parempaa koodia aikaiseksi.

        Assemblyä on käytetty lähinnä asioihin joihin ei ole aikoinaan ollut helposti parempia tapoja saatavilla. Sitä löytyy edelleen pieniä määriä rajatusti, kuten joku bootstrapping pätkä tai jotain vastaavaa.


    • Anonyymi
      • Anonyymi

        Hienoa! Noita vanhoja juttuja on aina kiva muistella. Ensimmäisen "viruksen" tein joskus 80-luvulla. En muista tarkkaan mutta Amigan käyttöjärjestelmä etsi sisään työnnetystä disketistä heti jonkun diskloader tiedoston ja suoritti sen ainoastaan tarkistaen tiedoston koon. Siihen tiedostoon pystyi itse laittamaan oman koodin kunhan tiedoston koko pysyi tavulleen samana. Kovin vaatimaton oli Amigan tietoturva.


      • Anonyymi
        Anonyymi kirjoitti:

        Hienoa! Noita vanhoja juttuja on aina kiva muistella. Ensimmäisen "viruksen" tein joskus 80-luvulla. En muista tarkkaan mutta Amigan käyttöjärjestelmä etsi sisään työnnetystä disketistä heti jonkun diskloader tiedoston ja suoritti sen ainoastaan tarkistaen tiedoston koon. Siihen tiedostoon pystyi itse laittamaan oman koodin kunhan tiedoston koko pysyi tavulleen samana. Kovin vaatimaton oli Amigan tietoturva.

        Eipä ollut DOSissakaan tietoturvaa kun virukset hyökkäsivät.
        Ensimmäinen tuli Saksasta ostetun ohjelman mukana postipaketissa työkoneelle.
        Poisto-ohjelmassa oli listattu 18 kappaletta.


      • Anonyymi
        Anonyymi kirjoitti:

        Eipä ollut DOSissakaan tietoturvaa kun virukset hyökkäsivät.
        Ensimmäinen tuli Saksasta ostetun ohjelman mukana postipaketissa työkoneelle.
        Poisto-ohjelmassa oli listattu 18 kappaletta.

        Muistan sen piipaa viiruksen jossa ambulanssi ajeli alalaidassa.
        Mutta nehän oli herjapohjalta tehtyjä, ilman isompaa haittaa.


      • Anonyymi
        Anonyymi kirjoitti:

        Muistan sen piipaa viiruksen jossa ambulanssi ajeli alalaidassa.
        Mutta nehän oli herjapohjalta tehtyjä, ilman isompaa haittaa.

        Mutta Linuxissa en ole törmännyt yhteenkään haitakeeseen!


      • Anonyymi
        Anonyymi kirjoitti:

        Mutta Linuxissa en ole törmännyt yhteenkään haitakeeseen!

        Eipä niihin törmää jos joku ohjelma ei niitä etsi. Ne haittaohjelmat ovat yleensä suunniteltu niin ettei käyttäjä "törmää".


      • Anonyymi
        Anonyymi kirjoitti:

        Eipä ollut DOSissakaan tietoturvaa kun virukset hyökkäsivät.
        Ensimmäinen tuli Saksasta ostetun ohjelman mukana postipaketissa työkoneelle.
        Poisto-ohjelmassa oli listattu 18 kappaletta.

        Latasin joskun 10 vuotta sitten Virolaisen nörtin viruspaketin, 2.4G ja noin 4000 viirusta ja osaan on ohjelma jolla sitä voi muuttaa.
        Osa toimii edeleen Windowsissa!


    • Anonyymi

      1970 luvulla ja kielenä olivat fortran ja cobol...

    • Anonyymi

      -70 luvun alkupuolella kävin yhden kurssin ja totesin ettei ole minun juttuni.

    • Anonyymi

      Ensimmäiseksi C64 Basicillä ja tuli perehdettyä assembleriin😀

      • Anonyymi

        Ihan sama kuin minulla. C64 basic olis ensimmäinen kokeilu. Myöhemmin ohjelmointi alkoi kiinnostaa enemmän. Amigan basic ja assembler ja c. PC kun tuli käyttöön 90-luvun alussa assembler jäi kun se peeceessä tuntui olevan niin sekavaa muistin sivutuksineen ym.


    • Anonyymi

      Kuten monet muut, olen käynyt linjan VIC-20, C64 ja Amiga.

      VIC-20 oli alkeellinen, mutta Basicin pystyi sillä oppimaan.
      C64 askel parempaan massamuistien kautta, vaikka Basic oli
      vielä aika VIC-20 tyylinen.

      Ohjelmointaitojen kasvessa tuli esille hiukan epämiellyttävä asia,
      Basicilla ohjelmointi olikin Basic-orientoitunuta ongelman ratkaisua,
      Ratkaise ongelma Basicin tyyliin tai et ollenkaan.
      Siispä jätin assemblerin kokonaan väliin, assembler-orientoituminen
      olisi ollut askel väärään suuntaan.

      Siitä alkoi parempien kielien etsintä, Pascal jäi pois muodollisena ja
      tiukkapipoisen kääntäjän takia. C oli toisen keksijänsä risuparran tapaan
      kuin risuaitaa, C-orientoituminen ei sopinut etsimääni.

      C64 omistajana olin tehnyt sprite-editorin Basicilla, toimi mutta aika hidas,
      Sitten löysin uuden kielen, jonka manuaali oli täysin käsittämätön, manuaalin esittelyssä kieli lähestyi ohjelmointi ongelmaan täysin uudesta
      näkökulmasta. Tämä kieli olikin ongelma-orientoitunut. Tein sillä
      sprite-editorin uudestaan, sitten myöhemmin tein makroassemblerilla,
      joka kuului kieleen, nopeuttavia osia vauhdin saamiseksi, kyseinen
      makroassembler sopi kieleen kuin nenä naamaan.

      Tästä kielestä en ollut kuullut aikaisemmin mitään, Pascalin ja C-ohjelmien
      mainoksien täyttämistä lehdistä ei löytynyt merkkiäkään siitä.

      Tämän kielen käyttäjiä, FORTH, ei ollut kovin paljon, yhteen aikaan
      maailmassa oli vain yksi FORTHin käyttäjä, sen keksinyt, joka halusi
      tehdä parempia ohjelmia, freelancer ohjelmoija kun oli.

      Nykyisin teen quick-and-dirty jutut Basicilla, tietyt taulukkolaskennalla,
      mielenkiintoiset ja erikoiset joillain kolmesta FORTH ohjelmastani ja
      erikoiset nopeustestit ja kokeet erittäin nopeaa koodia tuottavalla
      VFX FORTH:lla.

      • Anonyymi

        Forth ja Basic ovat kauheita.

        C ja Pascal mahdollistavat paremmin strukturoidun ohjelmoinnin, mutta nykyään on kätevämpiäkin kieliä.


      • Anonyymi

        Tuo aika hurjaa että vuonna 2022 löytyy joku joka käyttää Basiccia.

        Noihin quick and dirty juttuihin löytyy kätevämpiäkin.


      • Anonyymi
        Anonyymi kirjoitti:

        Forth ja Basic ovat kauheita.

        C ja Pascal mahdollistavat paremmin strukturoidun ohjelmoinnin, mutta nykyään on kätevämpiäkin kieliä.

        Hmm...
        Forth on ongelma-orientoitunut kieli, hieman samaan tapaan kuin Lisp.

        Kun tavanomaisissa kielissä ohjelmoija käyttää kääntäjän työkaluja
        ongelman ratkaisemiseen, forth-kielessä ohjelmoija tekee työkalut
        itse, parhaaksi kätsomallaan tavalla.

        Tavalliset kääntäjät kohdatessaan kontrollirakenteita käsittelevät niitä
        niin kuin kääntäjään on ohjelmoitu, samoin kääntäjä odottaa kohtaavansa
        rivin lopetusmerkin, puolipisteen.

        Forthin kääntäjä kontrollirakenteen kohdatessaan ei osaa tehdä sille mitään.
        Eikä kääntäjä edes odota kohtaavansa puolipistettä.
        Forthissa kyllä käytetään puolipistettä, sen merkitys on erilainen kuin
        muissa kielissä.

        Aloittajille ei yleensä tätä kerrota, koska he eivät ymmärrä sitä kuin
        myöhemmin.
        Ohjelmoidessa Forthilla oikeastaan lisätään kääntäjälle uusia ominaisuuksia,
        Forthissa ohjelmoidaan kääntäjää.

        Eräs hollantilainen yliopisto kokeili oppimisvaikeuksista kärsiville oppilaille
        Forthin opettamista, oppilaat halusivat mahdollisimman vähän matikkaa,
        jotkut oppilaat olivat kehitelleet näppäriä ratkaisuja, ei kuitenkaan kokeneen
        ohjelmoijan tasoista koodia.

        Forthissa on äärimmäisen yksinkertainen syntaksi, funktiokutsuja, tai sen tapaisia,
        peräkkäin välilyönnillä erotettuna, samaan pötköön funktioden parametrit.

        Ohjelmakokonaisuuden faktorointi, mielekkäisiin osiin jakamista, ei C-kielellä
        tai Pascalilla edes kannata yrittää. Forthissa se on viety hyvinkin pitkälle
        aivan luontevasti.

        Jos on käyttänyt HP:n RPN laskinta, siinä on samanlainen periaate kuin
        Forthissa, Forth on vain täysiverinen ohjelmointikieli.


      • Anonyymi
        Anonyymi kirjoitti:

        Tuo aika hurjaa että vuonna 2022 löytyy joku joka käyttää Basiccia.

        Noihin quick and dirty juttuihin löytyy kätevämpiäkin.

        Käsitämmekö dirty-sanan eri tavalla ?

        Mikä olisi kätevämpi vai pitäisikö sanoa dirtympi tapa??


      • Anonyymi
        Anonyymi kirjoitti:

        Hmm...
        Forth on ongelma-orientoitunut kieli, hieman samaan tapaan kuin Lisp.

        Kun tavanomaisissa kielissä ohjelmoija käyttää kääntäjän työkaluja
        ongelman ratkaisemiseen, forth-kielessä ohjelmoija tekee työkalut
        itse, parhaaksi kätsomallaan tavalla.

        Tavalliset kääntäjät kohdatessaan kontrollirakenteita käsittelevät niitä
        niin kuin kääntäjään on ohjelmoitu, samoin kääntäjä odottaa kohtaavansa
        rivin lopetusmerkin, puolipisteen.

        Forthin kääntäjä kontrollirakenteen kohdatessaan ei osaa tehdä sille mitään.
        Eikä kääntäjä edes odota kohtaavansa puolipistettä.
        Forthissa kyllä käytetään puolipistettä, sen merkitys on erilainen kuin
        muissa kielissä.

        Aloittajille ei yleensä tätä kerrota, koska he eivät ymmärrä sitä kuin
        myöhemmin.
        Ohjelmoidessa Forthilla oikeastaan lisätään kääntäjälle uusia ominaisuuksia,
        Forthissa ohjelmoidaan kääntäjää.

        Eräs hollantilainen yliopisto kokeili oppimisvaikeuksista kärsiville oppilaille
        Forthin opettamista, oppilaat halusivat mahdollisimman vähän matikkaa,
        jotkut oppilaat olivat kehitelleet näppäriä ratkaisuja, ei kuitenkaan kokeneen
        ohjelmoijan tasoista koodia.

        Forthissa on äärimmäisen yksinkertainen syntaksi, funktiokutsuja, tai sen tapaisia,
        peräkkäin välilyönnillä erotettuna, samaan pötköön funktioden parametrit.

        Ohjelmakokonaisuuden faktorointi, mielekkäisiin osiin jakamista, ei C-kielellä
        tai Pascalilla edes kannata yrittää. Forthissa se on viety hyvinkin pitkälle
        aivan luontevasti.

        Jos on käyttänyt HP:n RPN laskinta, siinä on samanlainen periaate kuin
        Forthissa, Forth on vain täysiverinen ohjelmointikieli.

        "Kun tavanomaisissa kielissä ohjelmoija käyttää kääntäjän työkaluja
        ongelman ratkaisemiseen, forth-kielessä ohjelmoija tekee työkalut
        itse, parhaaksi kätsomallaan tavalla."

        "Kun tavanomaisissa kielissä ohjelmoija käyttää kääntäjän työkaluja
        ongelman ratkaisemiseen, forth-kielessä ohjelmoija tekee työkalut
        itse, parhaaksi kätsomallaan tavalla."

        Ohjelmointikielten tarkoitus on olla formaali kieli millä kirjoitetaan ongelma tietokoneen ymmärtämään muotoon niin että ihminenkin sitä ymmärtää. Se on siis työkalu jolla mallinnetaan se ongelma. Tähän on useita paradigmoja, että jossain kielessä mallinnetaan käsitteitä, jossain taas puretaan ongelma funktioiksi, on deklaratiivinen kuvaus tai sitten on kyselykieli. Ohjelmointikieliä yleisesti käytetään kirjoittamaan välineitä siihen ilmaisuun.

        Forth on kovin alkeellinen tässä ja löytyy yksinkertaisesti parempia tapoja näiden työkalujen tekemiseen itse. Työkalujen soveltuvuutta voidaan mitata, että kun on jokin ongelma ja esittää sen ratkaisun koodina, niin analysoi sen koodin vaikka tällä: https://en.wikipedia.org/wiki/Halstead_complexity_measures

        Ihan hyvä tapa kehittää itseään ohjelmoijana on pyrkiä ratkaisemaan ongelma mahdollisimman elegantisti laskemalla sen koodin monimutkaisuuden. Sitä pitäisikin osata valita työkalu tehtävään oikein, että sillä esitetty ratkaisu on yksinkertainen. Tuollaisen ohjelman kirjoittaminen on myös yksinkertainen harjoite.

        "Ohjelmakokonaisuuden faktorointi, mielekkäisiin osiin jakamista, ei C-kielellä
        tai Pascalilla edes kannata yrittää. "

        Höpöä.

        Tässä pieni opetusvideoita miten C-kielisiä ohjelmakomponentteja on tarkoitus käyttää: https://youtu.be/tc4ROCJYbm0?t=330

        C:llä siis palastelee laajankin ohjelmakokonaisuuden helposti uudelleenkäytettäviksi komponenteiksi.


      • Anonyymi
        Anonyymi kirjoitti:

        Käsitämmekö dirty-sanan eri tavalla ?

        Mikä olisi kätevämpi vai pitäisikö sanoa dirtympi tapa??

        No siis jos vaan haluaa nopeasti saada ongelman ratkottua. Ei siis tarvitse yhtään välittää siitä miten hieno tai tehokas on vaan kuinka nopeasti saa ongelman ratkaistua.

        Ei oikeasti ole mitään sellaista missä olisi kätevintä käyttää Basiccia. Basic olisi kuollut aikoja sitten ellei Microsoft olisi sitä myynyt about joka koneeseen ja sitten se sai jatkoaikaa Visual Basicin muodossa, mikä oli aikoinaan joissakin jutuissa kätevä tapa tehdä käyttöliittymäpuolta mutta mitään ongelmia sillä ei ollut mielekästä ratkoa oikein missään tilantteessa vuosikymmeniin. Yksinkertaisesti liian paska.


      • Anonyymi
        Anonyymi kirjoitti:

        "Kun tavanomaisissa kielissä ohjelmoija käyttää kääntäjän työkaluja
        ongelman ratkaisemiseen, forth-kielessä ohjelmoija tekee työkalut
        itse, parhaaksi kätsomallaan tavalla."

        "Kun tavanomaisissa kielissä ohjelmoija käyttää kääntäjän työkaluja
        ongelman ratkaisemiseen, forth-kielessä ohjelmoija tekee työkalut
        itse, parhaaksi kätsomallaan tavalla."

        Ohjelmointikielten tarkoitus on olla formaali kieli millä kirjoitetaan ongelma tietokoneen ymmärtämään muotoon niin että ihminenkin sitä ymmärtää. Se on siis työkalu jolla mallinnetaan se ongelma. Tähän on useita paradigmoja, että jossain kielessä mallinnetaan käsitteitä, jossain taas puretaan ongelma funktioiksi, on deklaratiivinen kuvaus tai sitten on kyselykieli. Ohjelmointikieliä yleisesti käytetään kirjoittamaan välineitä siihen ilmaisuun.

        Forth on kovin alkeellinen tässä ja löytyy yksinkertaisesti parempia tapoja näiden työkalujen tekemiseen itse. Työkalujen soveltuvuutta voidaan mitata, että kun on jokin ongelma ja esittää sen ratkaisun koodina, niin analysoi sen koodin vaikka tällä: https://en.wikipedia.org/wiki/Halstead_complexity_measures

        Ihan hyvä tapa kehittää itseään ohjelmoijana on pyrkiä ratkaisemaan ongelma mahdollisimman elegantisti laskemalla sen koodin monimutkaisuuden. Sitä pitäisikin osata valita työkalu tehtävään oikein, että sillä esitetty ratkaisu on yksinkertainen. Tuollaisen ohjelman kirjoittaminen on myös yksinkertainen harjoite.

        "Ohjelmakokonaisuuden faktorointi, mielekkäisiin osiin jakamista, ei C-kielellä
        tai Pascalilla edes kannata yrittää. "

        Höpöä.

        Tässä pieni opetusvideoita miten C-kielisiä ohjelmakomponentteja on tarkoitus käyttää: https://youtu.be/tc4ROCJYbm0?t=330

        C:llä siis palastelee laajankin ohjelmakokonaisuuden helposti uudelleenkäytettäviksi komponenteiksi.

        Näytät viittavan C-kieleen.

        Siinä ehkä täytyykin lähestyä kuvaamallasi tyylillä, siis kääntäjän
        ymmärtämään muotoon.

        Forthissa työkalu lähestyminen on täysin luontevaa jo siinä vaiheessa
        kun kieltä opetellaan.
        Forthissa ohjelmoidaan kääntäjää itseään. Kääntäjä itse tulee ratkaisijaksi.

        Forthissa luodaan käsitteellinen malli ongelmasta ja sen mukaan rakennetaan
        työkalut, tai näin ainakin keksijä suositteli, sanoen että käsitteellinen malli
        on jo ratkaisu ja kieli sitten rakennetaan sellaiseksi että se ratkaisee ongelman.

        Forthissa ei edes tarvitse miettiä "työkalujen soveltuvuutta", sopinee hyvin
        C-maailmaan.
        Niin, C-kielellä on surkea maine bugien lähteenä, Forthin debuggaus on
        jotain sellaista mitä C-maailmassa ei olla nähtykään.

        Forthin alkeellisuudesta voidaan olla montaa mieltä, ainakin
        ammattiohjelmoijat sanovat että Forth on 6-10x tehokkaampi ympäristö
        kuin C-kielen vastaava, tai ehkä C-ohjelmoijat tekevät hitaasti koodia.

        Ohjelman palastelusta sen verran, ettei siihen tarvita opetusvideoita,
        se on vain luonnollinen osa hyvää ohjelmointia, ainakin Forthissa.

        Olen kyllä kuullut kritiikkiä C-ohjemoijien taipumuksesta tehdä suuria
        järkäleitä, joiden kanssa ollaan sitten vaikeuksissa.


      • Anonyymi
        Anonyymi kirjoitti:

        No siis jos vaan haluaa nopeasti saada ongelman ratkottua. Ei siis tarvitse yhtään välittää siitä miten hieno tai tehokas on vaan kuinka nopeasti saa ongelman ratkaistua.

        Ei oikeasti ole mitään sellaista missä olisi kätevintä käyttää Basiccia. Basic olisi kuollut aikoja sitten ellei Microsoft olisi sitä myynyt about joka koneeseen ja sitten se sai jatkoaikaa Visual Basicin muodossa, mikä oli aikoinaan joissakin jutuissa kätevä tapa tehdä käyttöliittymäpuolta mutta mitään ongelmia sillä ei ollut mielekästä ratkoa oikein missään tilantteessa vuosikymmeniin. Yksinkertaisesti liian paska.

        Kehuit juuri Basicin Quick-and-dirty sopivaksi kieleksi.

        Kieliä on joka lähtöön ja lisää tulee, paskakasat vain kasvavat.


      • Anonyymi
        Anonyymi kirjoitti:

        Näytät viittavan C-kieleen.

        Siinä ehkä täytyykin lähestyä kuvaamallasi tyylillä, siis kääntäjän
        ymmärtämään muotoon.

        Forthissa työkalu lähestyminen on täysin luontevaa jo siinä vaiheessa
        kun kieltä opetellaan.
        Forthissa ohjelmoidaan kääntäjää itseään. Kääntäjä itse tulee ratkaisijaksi.

        Forthissa luodaan käsitteellinen malli ongelmasta ja sen mukaan rakennetaan
        työkalut, tai näin ainakin keksijä suositteli, sanoen että käsitteellinen malli
        on jo ratkaisu ja kieli sitten rakennetaan sellaiseksi että se ratkaisee ongelman.

        Forthissa ei edes tarvitse miettiä "työkalujen soveltuvuutta", sopinee hyvin
        C-maailmaan.
        Niin, C-kielellä on surkea maine bugien lähteenä, Forthin debuggaus on
        jotain sellaista mitä C-maailmassa ei olla nähtykään.

        Forthin alkeellisuudesta voidaan olla montaa mieltä, ainakin
        ammattiohjelmoijat sanovat että Forth on 6-10x tehokkaampi ympäristö
        kuin C-kielen vastaava, tai ehkä C-ohjelmoijat tekevät hitaasti koodia.

        Ohjelman palastelusta sen verran, ettei siihen tarvita opetusvideoita,
        se on vain luonnollinen osa hyvää ohjelmointia, ainakin Forthissa.

        Olen kyllä kuullut kritiikkiä C-ohjemoijien taipumuksesta tehdä suuria
        järkäleitä, joiden kanssa ollaan sitten vaikeuksissa.

        "Siinä ehkä täytyykin lähestyä kuvaamallasi tyylillä, siis kääntäjän
        ymmärtämään muotoon."

        Ei välttämättä. Voihan sitä C:tä käyttää vaikka parserigeneraattoriin ja että sillä sitten ymmärtää sellaista syötettä kuin haluaa.

        "Forthissa luodaan käsitteellinen malli ongelmasta ja sen mukaan rakennetaan
        työkalut"

        Nykyään ne työkalut on jo. Käsitteellinen malli tulee vastaan joka kielellä. Esimerkiksi oliokielillä sitten ohjelmoidaan käsitteitä.

        "Niin, C-kielellä on surkea maine bugien lähteenä, Forthin debuggaus on
        jotain sellaista mitä C-maailmassa ei olla nähtykään."

        Pointtereilla ja heikolla tyypityksellä ne saatu.

        C on kuitenkin oikeastaan matalan tason kieli, ja sille toki löytyy työkalut sitten millä varmistetaan että ei tule niitä bugeja mutta en nyt C:llä kävisi mitään quick and dirty ratkaisuja tekemään, oikaisin vain tuota virhettä ei muka pysty faktoroimaan.

        "Forthissa ei edes tarvitse miettiä "työkalujen soveltuvuutta"

        Tulee se silläkin vastaan. Tuo koodikasan mittaaminen mitä se ongelman ratkaiseminen vaati, käy ihan jokaiseen kieleen, kehittäjään ja toteutukseen.

        "Forthin alkeellisuudesta voidaan olla montaa mieltä, ainakin
        ammattiohjelmoijat sanovat että Forth on 6-10x tehokkaampi ympäristö
        kuin C-kielen vastaava, tai ehkä C-ohjelmoijat tekevät hitaasti koodia."

        Mutta miksi pitäisi käyttää kumpaakaan kun on välineitä millä saa nopeammin?

        "Olen kyllä kuullut kritiikkiä C-ohjemoijien taipumuksesta tehdä suuria
        järkäleitä, joiden kanssa ollaan sitten vaikeuksissa."

        Todennäköisemmin kyse on väärin valitusta työkalusta.


      • Anonyymi
        Anonyymi kirjoitti:

        Kehuit juuri Basicin Quick-and-dirty sopivaksi kieleksi.

        Kieliä on joka lähtöön ja lisää tulee, paskakasat vain kasvavat.

        "Kehuit juuri Basicin Quick-and-dirty sopivaksi kieleksi."

        En kehunut. Paska se on, koska löytyy joka mittapuulla parempia työkaluja.


      • Anonyymi
        Anonyymi kirjoitti:

        "Siinä ehkä täytyykin lähestyä kuvaamallasi tyylillä, siis kääntäjän
        ymmärtämään muotoon."

        Ei välttämättä. Voihan sitä C:tä käyttää vaikka parserigeneraattoriin ja että sillä sitten ymmärtää sellaista syötettä kuin haluaa.

        "Forthissa luodaan käsitteellinen malli ongelmasta ja sen mukaan rakennetaan
        työkalut"

        Nykyään ne työkalut on jo. Käsitteellinen malli tulee vastaan joka kielellä. Esimerkiksi oliokielillä sitten ohjelmoidaan käsitteitä.

        "Niin, C-kielellä on surkea maine bugien lähteenä, Forthin debuggaus on
        jotain sellaista mitä C-maailmassa ei olla nähtykään."

        Pointtereilla ja heikolla tyypityksellä ne saatu.

        C on kuitenkin oikeastaan matalan tason kieli, ja sille toki löytyy työkalut sitten millä varmistetaan että ei tule niitä bugeja mutta en nyt C:llä kävisi mitään quick and dirty ratkaisuja tekemään, oikaisin vain tuota virhettä ei muka pysty faktoroimaan.

        "Forthissa ei edes tarvitse miettiä "työkalujen soveltuvuutta"

        Tulee se silläkin vastaan. Tuo koodikasan mittaaminen mitä se ongelman ratkaiseminen vaati, käy ihan jokaiseen kieleen, kehittäjään ja toteutukseen.

        "Forthin alkeellisuudesta voidaan olla montaa mieltä, ainakin
        ammattiohjelmoijat sanovat että Forth on 6-10x tehokkaampi ympäristö
        kuin C-kielen vastaava, tai ehkä C-ohjelmoijat tekevät hitaasti koodia."

        Mutta miksi pitäisi käyttää kumpaakaan kun on välineitä millä saa nopeammin?

        "Olen kyllä kuullut kritiikkiä C-ohjemoijien taipumuksesta tehdä suuria
        järkäleitä, joiden kanssa ollaan sitten vaikeuksissa."

        Todennäköisemmin kyse on väärin valitusta työkalusta.

        "Forth on kovin alkeellinen tässä ja löytyy yksinkertaisesti parempia tapoja näiden työkalujen tekemiseen itse. Työkalujen soveltuvuutta voidaan mitata, että kun on jokin ongelma ja esittää sen ratkaisun koodina, niin analysoi sen koodin vaikka tällä: https://en.wikipedia.org/wiki/Halstead_complexity_measures"

        Tässä linkissä on C-kielinen esimerkki koodin analysoijasta, kokeilin verrata
        sitä Forth-kielen vastaavaan.
        Tässä käsittelen asiaa keskiverto ohjelmoijan näkökulmasta, ainakaan Forthille
        ei löytynyt mullistavia työkaluja, joten mennään käsipelillä.

        main()
        {
        int a, b, c, avg;
        scanf("%d %d %d", &a, &b, &c);
        avg = (a b c)/3;
        printf("avg = %d", avg);
        }

        tarpeeksi yksinkertainen vertailun tekemiseen, se laskee kolmen luvun
        keskiarvon.

        Forthin puolesta koodin voisi tehdä C-henkiseksi, mutta koodi olisi surkeaa
        laadultaan, eikä Forth-henkinen.

        Verrattuna Forth-koodiin, siinä näkyy C-kääntäjän maailmankuva, kaikki on
        funktiota paitsi laskut sen sisällä.

        Ensin heitetään C-koodista pois funktioihin kohdistuva koodi, Forth-kääntäjän
        mielestä funktioita ei ole olemassa.
        '
        Joten pois main(), kaarisulkeet, aaltosulkeet, muuttujavaraukset ja käsittely,
        forth-kääntäjän maailmankuva on yksinkertainen, ei ole funktioita, ei
        proseduureja, ei aliohjemia eikä oikeastaan edes puhtaita operaattoreitakaan.

        Koska Forthissa ohjelmoidaan kääntäjää, ohjelmoija katsoo asioita
        kääntäjän näkökulmasta, eikä ole pakotettu esittämään asioita kääntäjän
        ehdoilla,

        Kun C-esimerkki on muutettu Forthkoodiksi, se on tälläinen.

        : koe 3 / ." avg = " . ;

        Tuollaisena Forth-kääntäjä sen suht mielellään näkisi, tälläisenä se olisi
        isomman koodin sisällä.

        Tuo on toimiva ohjelma, kaksi merkkiä ja jakoviiva /, käyttäytyvät
        kuin operaattorit, toisaalta kääntäjä ja ohjelmoija eivät pidä niitä
        vain operaattoreina, ei ainakaan puhtaina sellaisina, niillä on tärkeä
        rooli datan liikuttamiseen, jotta data saadaan oikeaan aikaan oikealle
        paikalle.
        Siksi kielen kehittäjä piti funktioita ja operaattoreita hämäävinä kun
        ohjelmoidaan kääntäjää, hän päätti että Forthissa on vain "word",
        ohjelmoidaan vain word:jä.

        on word, : on word, ; on word

        Miten sitten, kun ei ole funktiota, ainakaan puhtaita sellaisia, sitten lasketaan
        alussa mainittu koodin analyysi, itse katsoin että se ei ole kovinkaan tärkeä
        tässä ympäristössä.

        Kyseinen analyysi olettaa hyvin määriteltyjä funktioita ja operaattoreita,
        Forthkoodissa niitä ei ole.


      • Anonyymi
        Anonyymi kirjoitti:

        "Forth on kovin alkeellinen tässä ja löytyy yksinkertaisesti parempia tapoja näiden työkalujen tekemiseen itse. Työkalujen soveltuvuutta voidaan mitata, että kun on jokin ongelma ja esittää sen ratkaisun koodina, niin analysoi sen koodin vaikka tällä: https://en.wikipedia.org/wiki/Halstead_complexity_measures"

        Tässä linkissä on C-kielinen esimerkki koodin analysoijasta, kokeilin verrata
        sitä Forth-kielen vastaavaan.
        Tässä käsittelen asiaa keskiverto ohjelmoijan näkökulmasta, ainakaan Forthille
        ei löytynyt mullistavia työkaluja, joten mennään käsipelillä.

        main()
        {
        int a, b, c, avg;
        scanf("%d %d %d", &a, &b, &c);
        avg = (a b c)/3;
        printf("avg = %d", avg);
        }

        tarpeeksi yksinkertainen vertailun tekemiseen, se laskee kolmen luvun
        keskiarvon.

        Forthin puolesta koodin voisi tehdä C-henkiseksi, mutta koodi olisi surkeaa
        laadultaan, eikä Forth-henkinen.

        Verrattuna Forth-koodiin, siinä näkyy C-kääntäjän maailmankuva, kaikki on
        funktiota paitsi laskut sen sisällä.

        Ensin heitetään C-koodista pois funktioihin kohdistuva koodi, Forth-kääntäjän
        mielestä funktioita ei ole olemassa.
        '
        Joten pois main(), kaarisulkeet, aaltosulkeet, muuttujavaraukset ja käsittely,
        forth-kääntäjän maailmankuva on yksinkertainen, ei ole funktioita, ei
        proseduureja, ei aliohjemia eikä oikeastaan edes puhtaita operaattoreitakaan.

        Koska Forthissa ohjelmoidaan kääntäjää, ohjelmoija katsoo asioita
        kääntäjän näkökulmasta, eikä ole pakotettu esittämään asioita kääntäjän
        ehdoilla,

        Kun C-esimerkki on muutettu Forthkoodiksi, se on tälläinen.

        : koe 3 / ." avg = " . ;

        Tuollaisena Forth-kääntäjä sen suht mielellään näkisi, tälläisenä se olisi
        isomman koodin sisällä.

        Tuo on toimiva ohjelma, kaksi merkkiä ja jakoviiva /, käyttäytyvät
        kuin operaattorit, toisaalta kääntäjä ja ohjelmoija eivät pidä niitä
        vain operaattoreina, ei ainakaan puhtaina sellaisina, niillä on tärkeä
        rooli datan liikuttamiseen, jotta data saadaan oikeaan aikaan oikealle
        paikalle.
        Siksi kielen kehittäjä piti funktioita ja operaattoreita hämäävinä kun
        ohjelmoidaan kääntäjää, hän päätti että Forthissa on vain "word",
        ohjelmoidaan vain word:jä.

        on word, : on word, ; on word

        Miten sitten, kun ei ole funktiota, ainakaan puhtaita sellaisia, sitten lasketaan
        alussa mainittu koodin analyysi, itse katsoin että se ei ole kovinkaan tärkeä
        tässä ympäristössä.

        Kyseinen analyysi olettaa hyvin määriteltyjä funktioita ja operaattoreita,
        Forthkoodissa niitä ei ole.

        "Kun C-esimerkki on muutettu Forthkoodiksi, se on tälläinen."

        Ei toimi. Koodisi ei ole ajettavassa muodossa.

        Syötä rimpsusi vaikka tähän niin, että sitä voi ajaa: https://www.tutorialspoint.com/execute_forth_online.php

        Minä puolestani nostan rimaa vähän että miten olisi tällainen?

        print("avg = ", sum(map(int, input().split())) / 3)

        Ja Halstead complixityllä kun laski tuon ohjelman niin saatiin:

        V = 50,72
        D = 9
        E = 456,48

        Parempi siis kuin C-kielinen.

        "Kyseinen analyysi olettaa hyvin määriteltyjä funktioita ja operaattoreita,
        Forthkoodissa niitä ei ole."

        Ei oleta. Siinä lasketaan operaattoreita ja operandeja. Ei siis tarvitse mitään funktioita vaan tuolla analysoi vaikka assemblerkoodia. Eli kuinka monta yhteensä, ja monta erilaista käytetty. Ne voidaan laskea ihan mistä tahansa koodista ja saadaan siitä vertailukelpoinen lukema.


      • Anonyymi
        Anonyymi kirjoitti:

        "Kun C-esimerkki on muutettu Forthkoodiksi, se on tälläinen."

        Ei toimi. Koodisi ei ole ajettavassa muodossa.

        Syötä rimpsusi vaikka tähän niin, että sitä voi ajaa: https://www.tutorialspoint.com/execute_forth_online.php

        Minä puolestani nostan rimaa vähän että miten olisi tällainen?

        print("avg = ", sum(map(int, input().split())) / 3)

        Ja Halstead complixityllä kun laski tuon ohjelman niin saatiin:

        V = 50,72
        D = 9
        E = 456,48

        Parempi siis kuin C-kielinen.

        "Kyseinen analyysi olettaa hyvin määriteltyjä funktioita ja operaattoreita,
        Forthkoodissa niitä ei ole."

        Ei oleta. Siinä lasketaan operaattoreita ja operandeja. Ei siis tarvitse mitään funktioita vaan tuolla analysoi vaikka assemblerkoodia. Eli kuinka monta yhteensä, ja monta erilaista käytetty. Ne voidaan laskea ihan mistä tahansa koodista ja saadaan siitä vertailukelpoinen lukema.

        "Ei toimi. Koodisi ei ole ajettavassa muodossa.

        Syötä rimpsusi vaikka tähän niin, että sitä voi ajaa: https://www.tutorialspoint.com/execute_forth_online.php"

        No kyllä toimii, ajoit sen väärin. Syötä se näin.

        1 2 3 koe.

        Ei kait ohjelmointikilpailu ole edessä. en oikein viitsisi.


      • Anonyymi
        Anonyymi kirjoitti:

        "Ei toimi. Koodisi ei ole ajettavassa muodossa.

        Syötä rimpsusi vaikka tähän niin, että sitä voi ajaa: https://www.tutorialspoint.com/execute_forth_online.php"

        No kyllä toimii, ajoit sen väärin. Syötä se näin.

        1 2 3 koe.

        Ei kait ohjelmointikilpailu ole edessä. en oikein viitsisi.

        Ei toimi.


      • Anonyymi
        Anonyymi kirjoitti:

        "Ei toimi. Koodisi ei ole ajettavassa muodossa.

        Syötä rimpsusi vaikka tähän niin, että sitä voi ajaa: https://www.tutorialspoint.com/execute_forth_online.php"

        No kyllä toimii, ajoit sen väärin. Syötä se näin.

        1 2 3 koe.

        Ei kait ohjelmointikilpailu ole edessä. en oikein viitsisi.

        Se ei toimi samalla tavalla, vaan referenssinä oleva C-kielinen ohjelma käynnistyy, kysyy vain ne numerot eikä edelytä mitään "koe" kirjoittamista. Tuossa vähän oikaistaan.

        Ymmärrän kyllä forthin logiikan, että joka kielellä on täysin vastaavia tapoja ohjelmoida.


      • Anonyymi
        Anonyymi kirjoitti:

        Ei toimi.

        Hmm.

        Tyhjennä pois se hello world juttu.

        Kopioi 1. riville koodi., enter
        2. riville 1 2 3 koe välilyönti numeroiden ja koe sanan välissä, koe perässä ei pistettä.
        sitten execute

        numeroiden välissä välilyönti.

        Minkälaisia arvoja forth rimpsu sai??


      • Anonyymi
        Anonyymi kirjoitti:

        Hmm.

        Tyhjennä pois se hello world juttu.

        Kopioi 1. riville koodi., enter
        2. riville 1 2 3 koe välilyönti numeroiden ja koe sanan välissä, koe perässä ei pistettä.
        sitten execute

        numeroiden välissä välilyönti.

        Minkälaisia arvoja forth rimpsu sai??

        Kopioiko selaimesi oikein minun forthkoodin?
        Ei siinä pitäisi C-ohjelma käynnistyä, tarkista selaimesi kopio muisti
        että siellä on vain minun forthkoodi.


      • Anonyymi
        Anonyymi kirjoitti:

        Hmm.

        Tyhjennä pois se hello world juttu.

        Kopioi 1. riville koodi., enter
        2. riville 1 2 3 koe välilyönti numeroiden ja koe sanan välissä, koe perässä ei pistettä.
        sitten execute

        numeroiden välissä välilyönti.

        Minkälaisia arvoja forth rimpsu sai??

        Se execute ei kysy niitä numeroita vaan ne pitää kirjoittaa siihen ohjelmaan mukaan, ja pitää kirjoittaa myös "koe".

        Jos kirjoittaa kaksi riviä koodia, eli

        : koe 3 / ." avg = " . ;
        1 2 3 koe

        Niin sitten se parsii ensiksi rivin yksi kirjoittamalla sanalle "koe" mitä pitäisi tehdä ja toinen rivi sitten parsii syötteen ja kutsuu sitä sanaa "koe"

        Mutta tuohan ei toimi nyt samalla tavalla. Tuo C-kielinen ohjelma lukee syötettä stdin ja kun virta loppuu niin sitten lasketaan tulos.

        Tämä on parempi tuohon forthin testailuun: https://www.jdoodle.com/execute-forth-online/

        Pitäisi kirjoittaa se ohjelma tuohon ylös, ja stdin inputs -kohtaan sitten 1 2 3

        Ja siellä stdin ei pitäisi lukea mikään "koe".


      • Anonyymi
        Anonyymi kirjoitti:

        Se execute ei kysy niitä numeroita vaan ne pitää kirjoittaa siihen ohjelmaan mukaan, ja pitää kirjoittaa myös "koe".

        Jos kirjoittaa kaksi riviä koodia, eli

        : koe 3 / ." avg = " . ;
        1 2 3 koe

        Niin sitten se parsii ensiksi rivin yksi kirjoittamalla sanalle "koe" mitä pitäisi tehdä ja toinen rivi sitten parsii syötteen ja kutsuu sitä sanaa "koe"

        Mutta tuohan ei toimi nyt samalla tavalla. Tuo C-kielinen ohjelma lukee syötettä stdin ja kun virta loppuu niin sitten lasketaan tulos.

        Tämä on parempi tuohon forthin testailuun: https://www.jdoodle.com/execute-forth-online/

        Pitäisi kirjoittaa se ohjelma tuohon ylös, ja stdin inputs -kohtaan sitten 1 2 3

        Ja siellä stdin ei pitäisi lukea mikään "koe".

        Kokeilin juuri
        https://www.jdoodle.com/execute-forth-online/

        Toimi pienen hapuilun jälkeen, päivitin kerran sen sivun, saattoi auttaa.

        https://www.tutorialspoint.com/execute_forth_online.php
        kun kokeilin tätä, päivitin usein myös tätä sivua, se tuntui auttavan.

        Joka tapauksessa, kummallakin sivulla toimii niin kuin pitää,
        2. rivillä,

        1 2 3 koe sitten execute toimii täysin.

        Kysymys, oletko analysoinut sillä testillä myös forthkoodin, minkälaisia
        lukemia siitä?


      • Anonyymi
        Anonyymi kirjoitti:

        Kokeilin juuri
        https://www.jdoodle.com/execute-forth-online/

        Toimi pienen hapuilun jälkeen, päivitin kerran sen sivun, saattoi auttaa.

        https://www.tutorialspoint.com/execute_forth_online.php
        kun kokeilin tätä, päivitin usein myös tätä sivua, se tuntui auttavan.

        Joka tapauksessa, kummallakin sivulla toimii niin kuin pitää,
        2. rivillä,

        1 2 3 koe sitten execute toimii täysin.

        Kysymys, oletko analysoinut sillä testillä myös forthkoodin, minkälaisia
        lukemia siitä?

        Vielä yksi huomio, laitan 1. rivin koodin copylla, en kirjoita mitään siihen.
        Sitten painan enteriä, ja jos 2,. rivin kursori häviää, aktivoin sen
        ja sitten 2. riville 1 2 3 koe ja execute nappia.


      • Anonyymi
        Anonyymi kirjoitti:

        Tuo aika hurjaa että vuonna 2022 löytyy joku joka käyttää Basiccia.

        Noihin quick and dirty juttuihin löytyy kätevämpiäkin.

        Ei kukaan varmaan ja Windowsiin en kyllä koodaa enään yhtään mitään!
        Se varasti koodiani!


      • Anonyymi
        Anonyymi kirjoitti:

        "Ei toimi. Koodisi ei ole ajettavassa muodossa.

        Syötä rimpsusi vaikka tähän niin, että sitä voi ajaa: https://www.tutorialspoint.com/execute_forth_online.php"

        No kyllä toimii, ajoit sen väärin. Syötä se näin.

        1 2 3 koe.

        Ei kait ohjelmointikilpailu ole edessä. en oikein viitsisi.

        Ei nykymailmaassa kannata kaikkia itse kirjoittaa, valmiita pätkiä on lähes joka asiaan! Vapaana koodina!


      • Anonyymi
        Anonyymi kirjoitti:

        Ei kukaan varmaan ja Windowsiin en kyllä koodaa enään yhtään mitään!
        Se varasti koodiani!

        Et sinä Windowsiin ole mitään koodannutkaan. Se kun ei ole vapaata lähdekoodia, jota käyttäjä voi itse mielensä mukaan muokata.

        Ainoa mitä voin jollain tasolla kuvitella sinun tarkoittavan, niin että siinä olisi mitään järkeä, on että olet käyttänyt versionhallintaan Githubia, josta Microsoftin Copilot (ei Windows) on käyttänyt koodiasi tekoälyn kouluttamiseen.

        Jos tuota tarkoitit, niin sehän ei taas liity Windowsiin mitenkään, koska mitään Windowsia ei ole ohjelmoitu Copilotin avulla. Copilot on (ainakin toistaiseksi) harrastelijapuuhastelijoiden leikkikalu, joka ennemminkin lisää kuin vähentää työmäärää jos sitä yrittäisi käyttää johonkin vakavahenkiseen projektiin.

        Copilotinkaan tapauksessahan Microsoft ei ole kenenkään koodia varastanut, vaan vahingossa (huonon datankäsittelyn seurauksena) saanut aikaan, että moni Copilotin käyttäjä on tietämättään (tai osa tietoisesti) varastanut Githubin käyttäjien koodia, kun Copilot on sitä tarjonnut.


    • Anonyymi

      Käyttääkös kukaan enää Lispiä?

      • Anonyymi

        Clojuren muodossa sitä käytetään paljonkin.


    • Anonyymi

      Keskustelussa on mainittu monia kieliä, joista voi löytää mieleisensä.
      Kuka muu voisi antaa paremman näkemyksen kieleen ja ohjelmointiin
      kuin sen kehittänyt henkilö.

      Tuossa linkissä on useiden käytössä olevien kielien kehittäjien
      näkemyksiä kehittämästään kielestä ja muistakin kielistä.

      Muista poikkeavan kielen kehittänyt Chuck Moore, jonka Forth
      antaa uuden näkemyksen ohjelmointiin. Suosittelen.

      https://ia802700.us.archive.org/21/items/MastermindsOfProgramming/Masterminds of Programming.pdf

      • Anonyymi

        Huomauttaisin vain että kielen parsiminen on tunnettu erittäin hyvin vuosikymmenien ajan, ei se ole mitään salatiedettä.

        Olen minäkin ohjelmoinut oman pökäleen lispin parsimiseksi ja pientä DSL:ää.

        Minun näkemykseni on hyvin vahva siinä, että ohjelmoinnin tarkoitus on siirtää ihmisten ajatuksia ajettavaan muotoon.

        Ohjelmointikielen tarkoitus taas on olla työkalu siihen, että niitä ajatuksia voi ilmaista formaalilla kielelellä mitä ihmiset voivat ymmärtää ja mitä voi koneellisesti lukea.

        Eri tavat ilmaista onnistuvat käytännössä aivan kaikilla turing täydellisillä kielillä. Esimerkiksi sillä C:llä onnistuu aivan helposti ohjelmoimaan täysin vastaavalla tavalla kuin Forthilla.

        Joten se mikä ratkaisee on se, että miten hyvin ilmaisee olemassa olevilla työkaluilla ongelman että se täyttää vaatimukset. Ja niitä asioita voi mitata vaikka staattisella analysoinnilla, mittaamalla aikaa, muistinkulutusta tai mitä nyt keksiikään.


      • Anonyymi
        Anonyymi kirjoitti:

        Huomauttaisin vain että kielen parsiminen on tunnettu erittäin hyvin vuosikymmenien ajan, ei se ole mitään salatiedettä.

        Olen minäkin ohjelmoinut oman pökäleen lispin parsimiseksi ja pientä DSL:ää.

        Minun näkemykseni on hyvin vahva siinä, että ohjelmoinnin tarkoitus on siirtää ihmisten ajatuksia ajettavaan muotoon.

        Ohjelmointikielen tarkoitus taas on olla työkalu siihen, että niitä ajatuksia voi ilmaista formaalilla kielelellä mitä ihmiset voivat ymmärtää ja mitä voi koneellisesti lukea.

        Eri tavat ilmaista onnistuvat käytännössä aivan kaikilla turing täydellisillä kielillä. Esimerkiksi sillä C:llä onnistuu aivan helposti ohjelmoimaan täysin vastaavalla tavalla kuin Forthilla.

        Joten se mikä ratkaisee on se, että miten hyvin ilmaisee olemassa olevilla työkaluilla ongelman että se täyttää vaatimukset. Ja niitä asioita voi mitata vaikka staattisella analysoinnilla, mittaamalla aikaa, muistinkulutusta tai mitä nyt keksiikään.

        En kiistä parsereiden roolia.

        Sanoin alkuviestissäni, etten pitänyt hyvänä ajatella ongelmia in terms of
        c-compiler, kuten amerikkalanen voisi tehokkaasti ilmaista.

        Jos luit Mooren haastattelun, siinä on myös minun ajatukseni aika pitkälle,
        ei syntaksi kiemurtelua, se että itse täydennetään kääntäjää, se minkä Moore
        mainitsee kerran hyvän koodin tunnusmerkkinä, koodin suorituksen flow
        tunteen, muissa kielissä sitä en ole kokenut, sen on moni forthkoodaaja maininnut.

        Vaikka kääntäjää ohjelmoidaan, voidaan rakentaa toisentyyppinen muuttuja
        perusmuuttujan rinnalle, koodin flow suoritus menee edelle, eikä kääntäjän
        muuttamisella ole itsetarkoitusta.

        Hyvä forth-ohjelmoija tuottaa nuo kaikki ratkaisevat tekijät suoraan forthin ominaisuuksilla.

        Kun kerran parametriliikenne menee käyttäjän näkyvissä pinon kautta,
        ohjelmoija pyrkii rakentamaan mahdollisimman tehokkaan koodin,
        forthmaisen sellaisen. Sellaista C-ohjemoijat eivät heti osaa tehdä siirtyessään
        forthin puolelle, he ovat oppineet toiseen ohjelmointityyliin.
        On opittava toisenlainen ohjelmointityyli, kaikista ei edes ole sellaiseen.


      • Anonyymi
        Anonyymi kirjoitti:

        En kiistä parsereiden roolia.

        Sanoin alkuviestissäni, etten pitänyt hyvänä ajatella ongelmia in terms of
        c-compiler, kuten amerikkalanen voisi tehokkaasti ilmaista.

        Jos luit Mooren haastattelun, siinä on myös minun ajatukseni aika pitkälle,
        ei syntaksi kiemurtelua, se että itse täydennetään kääntäjää, se minkä Moore
        mainitsee kerran hyvän koodin tunnusmerkkinä, koodin suorituksen flow
        tunteen, muissa kielissä sitä en ole kokenut, sen on moni forthkoodaaja maininnut.

        Vaikka kääntäjää ohjelmoidaan, voidaan rakentaa toisentyyppinen muuttuja
        perusmuuttujan rinnalle, koodin flow suoritus menee edelle, eikä kääntäjän
        muuttamisella ole itsetarkoitusta.

        Hyvä forth-ohjelmoija tuottaa nuo kaikki ratkaisevat tekijät suoraan forthin ominaisuuksilla.

        Kun kerran parametriliikenne menee käyttäjän näkyvissä pinon kautta,
        ohjelmoija pyrkii rakentamaan mahdollisimman tehokkaan koodin,
        forthmaisen sellaisen. Sellaista C-ohjemoijat eivät heti osaa tehdä siirtyessään
        forthin puolelle, he ovat oppineet toiseen ohjelmointityyliin.
        On opittava toisenlainen ohjelmointityyli, kaikista ei edes ole sellaiseen.

        "Sanoin alkuviestissäni, etten pitänyt hyvänä ajatella ongelmia in terms of
        c-compiler, kuten amerikkalanen voisi tehokkaasti ilmaista."

        Ei niin pidäkkään ajatella. Ennemminkin pitää ajatella sitä, että on ongelma mikä pitää ratkaista, ratkaisulla kelpoisuusvaatimukset ja miten se käy mahdollisimman elegantisti.

        Käytännön elämän kelpoisuusvaatimuksia voi olla vaikka suorituskyky, integrointi toiseen jöärjestelmään ja standardit ja miten varmistetaan laatu että ei ole ihan buginen.

        En minä pidä C:tä sopivana monessakaan käytännön asiassa. Se mitä sillä tehdään on systeemitason juttuja että riippuvuudet pysyvät pienenä, tai jotain matalan tason juttua kun on niille mikrokontrollereille SDK:ta jossa se C-kääntäjä. C:llä voi olla käyttökohteensa myös siinä jos tekee niitä hyvin pieniä komponentteja unix putkiin. Eli siinä mihin se on alunperinkin tehty.

        Kieli on työkalu joka valitaan ongelman mukaan, sillä ilmaistaan sitä tähän sopivaa paradigmaa ja toteutetaan arkkitehtuuria.


      • Anonyymi
        Anonyymi kirjoitti:

        "Sanoin alkuviestissäni, etten pitänyt hyvänä ajatella ongelmia in terms of
        c-compiler, kuten amerikkalanen voisi tehokkaasti ilmaista."

        Ei niin pidäkkään ajatella. Ennemminkin pitää ajatella sitä, että on ongelma mikä pitää ratkaista, ratkaisulla kelpoisuusvaatimukset ja miten se käy mahdollisimman elegantisti.

        Käytännön elämän kelpoisuusvaatimuksia voi olla vaikka suorituskyky, integrointi toiseen jöärjestelmään ja standardit ja miten varmistetaan laatu että ei ole ihan buginen.

        En minä pidä C:tä sopivana monessakaan käytännön asiassa. Se mitä sillä tehdään on systeemitason juttuja että riippuvuudet pysyvät pienenä, tai jotain matalan tason juttua kun on niille mikrokontrollereille SDK:ta jossa se C-kääntäjä. C:llä voi olla käyttökohteensa myös siinä jos tekee niitä hyvin pieniä komponentteja unix putkiin. Eli siinä mihin se on alunperinkin tehty.

        Kieli on työkalu joka valitaan ongelman mukaan, sillä ilmaistaan sitä tähän sopivaa paradigmaa ja toteutetaan arkkitehtuuria.

        Tietenkin kieli on työkalu, tarkoitettu kuitenkin ihmiselle jonka
        tiedonkäsittely on kuitenkin omanlaatuisensa. Voisi ajatella että kun
        kone ei toimi kuin aivot, niin kielen pitäisi olla ihmisen ajattelun luonteinen
        ja kääntäjän sitten tehdä siitä koneelle tehokas koodi.

        Kääntäjän rooli pakottaa kuitenkin kielen tietyn tyyppiseksi ja siten ohjelmoijan
        toimimaan kääntäjän ehdoilla.
        Näyttää siltä että kielen kehittäjän tausta vaikuttaa tehdyn kielen rakenteeseen,
        pascalin tekijä oli yliopistoproffa, se näkyykin sitten muodollisudessa ja
        syntaksin painotuksessa. Jos syntaksi aiheuttaa eniten virheitä, niin ihmisen
        ajattelun suunnasta pascal ja sen seuraajat eivät ole paras mahdollinen kieli.

        C-tekijät olivat tietojenkäsittelytieteilijöitä ja työskentelivät Bells labrassa,
        he olivat järjestelmärakentajia, ehkä se näkyy sitten C-kääntäjässä.

        Forthin kehittäjä oli freelanceohjelmoija, joka kokemuksestaan halusi tehdä
        itselleen tehokkaamman työkalun, olisiko hän päässyt lähemmäksi ihmisen
        luontaista tapaa ajatella ja rakentaa kone-kieli-kokonaisuus sen mukaan.

        Muistan, kun kaverini osti itselleen pienen korttikoneen, siinä oli 3-4 pientä
        lediä, sitä ohjelmoitiin numeronäppäimistöllä jolla syötettiin binääriluvut
        suoraan muistiin. Hän laski binäärit paperilla katsoi ohjeista mihin muistiin
        numerot syötetään, sen äheltämisen jälkeen yksi ledi saatiin syttymään.

        Katsottuani sitä, sanoin hänelle " Täytyy olla parempi tapa tehdä tuo", ehkä
        siitä on lähtenyt hyvän tietokoneliittymän etsintä.

        Lueskellassani "Mestariojelmoijat" teosta, kaikilla tekijöillä oli oma näkemys
        kielestä, eräänlainen kielifilosofia, niissä oli aika suuria eroja, kaikki eivät
        kylläkään osanneet oikein muotoilla näkemyksiään, vaan miettivät lähinnä
        teknisiä asioita, eivät ihmisen ajattelun suunnasta.


      • Anonyymi
        Anonyymi kirjoitti:

        Tietenkin kieli on työkalu, tarkoitettu kuitenkin ihmiselle jonka
        tiedonkäsittely on kuitenkin omanlaatuisensa. Voisi ajatella että kun
        kone ei toimi kuin aivot, niin kielen pitäisi olla ihmisen ajattelun luonteinen
        ja kääntäjän sitten tehdä siitä koneelle tehokas koodi.

        Kääntäjän rooli pakottaa kuitenkin kielen tietyn tyyppiseksi ja siten ohjelmoijan
        toimimaan kääntäjän ehdoilla.
        Näyttää siltä että kielen kehittäjän tausta vaikuttaa tehdyn kielen rakenteeseen,
        pascalin tekijä oli yliopistoproffa, se näkyykin sitten muodollisudessa ja
        syntaksin painotuksessa. Jos syntaksi aiheuttaa eniten virheitä, niin ihmisen
        ajattelun suunnasta pascal ja sen seuraajat eivät ole paras mahdollinen kieli.

        C-tekijät olivat tietojenkäsittelytieteilijöitä ja työskentelivät Bells labrassa,
        he olivat järjestelmärakentajia, ehkä se näkyy sitten C-kääntäjässä.

        Forthin kehittäjä oli freelanceohjelmoija, joka kokemuksestaan halusi tehdä
        itselleen tehokkaamman työkalun, olisiko hän päässyt lähemmäksi ihmisen
        luontaista tapaa ajatella ja rakentaa kone-kieli-kokonaisuus sen mukaan.

        Muistan, kun kaverini osti itselleen pienen korttikoneen, siinä oli 3-4 pientä
        lediä, sitä ohjelmoitiin numeronäppäimistöllä jolla syötettiin binääriluvut
        suoraan muistiin. Hän laski binäärit paperilla katsoi ohjeista mihin muistiin
        numerot syötetään, sen äheltämisen jälkeen yksi ledi saatiin syttymään.

        Katsottuani sitä, sanoin hänelle " Täytyy olla parempi tapa tehdä tuo", ehkä
        siitä on lähtenyt hyvän tietokoneliittymän etsintä.

        Lueskellassani "Mestariojelmoijat" teosta, kaikilla tekijöillä oli oma näkemys
        kielestä, eräänlainen kielifilosofia, niissä oli aika suuria eroja, kaikki eivät
        kylläkään osanneet oikein muotoilla näkemyksiään, vaan miettivät lähinnä
        teknisiä asioita, eivät ihmisen ajattelun suunnasta.

        "Voisi ajatella että kun kone ei toimi kuin aivot, niin kielen pitäisi olla ihmisen ajattelun luonteinen ja kääntäjän sitten tehdä siitä koneelle tehokas koodi."

        Juurikin näin.

        Tuo menee käytännössä ratkottavan ongelman mukaan, minkälainen ajatusmalli sen ratkaisuun sopii parhaiten.

        Kun on kyse matemaattisemmasta ongelmasta ja algoritmeista, funktionaalinen lähestymistapa on paras.

        Oliokieli taas on työkalu jolla mallinnetaan käsitteitä, ja rakennetaan näillä kieltä kommunikointiin.

        Melkoisen paljon ratkottavista asioista on parasta kyseiseen ongelmaan suunnatulla kielellä, käyttää niin sanottua domain specific langugea. Näitähän on runsaasti ohjaamaan vaikka projektia, konfiguraatiota, testausta, käyttöliittymää jne. Sitten on query kieliä joiden tarkoitus on ratkaista asia kysymällä tallennettua tietoa.

        Niin Pascal kuin C ovat melkoisen kankeita. Forth taas muistuttaa jotain matalan tason parserigeneraattoria. Parserigeneraattorit ovat yleisiä kun rakennetaan jotain domain specific languagea.

        C on jäänyt henkiin sinne matalalle tasolle defacto standardina.

        "Forthin kehittäjä oli freelanceohjelmoija, joka kokemuksestaan halusi tehdä
        itselleen tehokkaamman työkalun, olisiko hän päässyt lähemmäksi ihmisen
        luontaista tapaa ajatella ja rakentaa kone-kieli-kokonaisuus sen mukaan."

        Sanoisin että ei. Se tapa miten ajatellaan menee niin paljon ratkaistavan ongelman mukaan.


      • Anonyymi
        Anonyymi kirjoitti:

        "Voisi ajatella että kun kone ei toimi kuin aivot, niin kielen pitäisi olla ihmisen ajattelun luonteinen ja kääntäjän sitten tehdä siitä koneelle tehokas koodi."

        Juurikin näin.

        Tuo menee käytännössä ratkottavan ongelman mukaan, minkälainen ajatusmalli sen ratkaisuun sopii parhaiten.

        Kun on kyse matemaattisemmasta ongelmasta ja algoritmeista, funktionaalinen lähestymistapa on paras.

        Oliokieli taas on työkalu jolla mallinnetaan käsitteitä, ja rakennetaan näillä kieltä kommunikointiin.

        Melkoisen paljon ratkottavista asioista on parasta kyseiseen ongelmaan suunnatulla kielellä, käyttää niin sanottua domain specific langugea. Näitähän on runsaasti ohjaamaan vaikka projektia, konfiguraatiota, testausta, käyttöliittymää jne. Sitten on query kieliä joiden tarkoitus on ratkaista asia kysymällä tallennettua tietoa.

        Niin Pascal kuin C ovat melkoisen kankeita. Forth taas muistuttaa jotain matalan tason parserigeneraattoria. Parserigeneraattorit ovat yleisiä kun rakennetaan jotain domain specific languagea.

        C on jäänyt henkiin sinne matalalle tasolle defacto standardina.

        "Forthin kehittäjä oli freelanceohjelmoija, joka kokemuksestaan halusi tehdä
        itselleen tehokkaamman työkalun, olisiko hän päässyt lähemmäksi ihmisen
        luontaista tapaa ajatella ja rakentaa kone-kieli-kokonaisuus sen mukaan."

        Sanoisin että ei. Se tapa miten ajatellaan menee niin paljon ratkaistavan ongelman mukaan.

        "Niin Pascal kuin C ovat melkoisen kankeita. Forth taas muistuttaa jotain matalan tason parserigeneraattoria."

        Forth muistuttaa sitä, mutta Forth on pinokoneiden kieli ja niissä on päästy
        noin pitkälle, syntaksi minimissään.
        De facto Forth on pinokoneiden äidinkieli.

        Kun ihminen on käsiteajattelija, asia vodaan kuvata yleisesti näin.

        Ihmisen tiedonkäsittelyssä ja Forthin toiminnassa on huomattavia
        samanlaisuutta, ehkä Forthin kehittäjä on intuitiivisesti matkinut
        Forthissaan ihmistä.

        Kehittäjä kutsui Forthia ongelma-orientoituneeksi kieleksi, ehkä tästä syystä.

        Kun ihminen kohtaa ongelman, hän automaattisesti tarkastaa käsitteistöstään
        onko siellä ratkaisuvälineitä, jos ei, niin onko samanlaista asiaa käsitelty
        aikaisemmin. Jos ei, niin hän alkaa rakentamaan tarvittavia käsitteitä,
        tämä vaihe voi kestää vuosikaupalla. Tämän kaiken hän tekee tietoisuuden
        avulla.

        Forthissa ei ole tietoisuutta, joten ohjelmoijan on astuttava puikkoihin.
        Ohjelmoija tarkistaa sanakirjasta onko siellä työvälineitä ongelman
        ratkaisuun, jos ei, niin onko joskus käsitelty saman tyyppistä, eli
        onko sanakirjan luvuissa ideoita, jos ei, niin ohjelmoija alkaa rakentamaan
        uusia käsitteitä Forth ympäristön sanakirjaan. Rivikoodia enter, koodi on
        käännetty ja linkattu sanakirjaan, jokainen uusi sana on kääntäjän käytössä.

        Lopputuloksena on Forth-kielen laajennettu versio, joka on viritetty tuon
        ongelman ratkaisuun.
        Samoin kuin ihmisen ratkaistua oman ongelmansa, hänellä on laajennettu ja
        tehostettu käsitekoneisto myös sellaisten ongelmien ratkaisuun.

        Epäilen että kehittäjä on vaistonvaraisesti kehitellyt itsessään tunnistamansa
        tapahtumaketjun, eräät haastattelukommentit antavat ymmärtää näin.

        Amerikkalaiset käyttävät yleisesti ilmaisua "in terms of", kun terms viittaa
        käsitteisiin, kehittäjä on varmasti kuullut tämän ilmaisun useasti ja tunnistaa
        käsitteiden roolin.


      • Anonyymi
        Anonyymi kirjoitti:

        "Niin Pascal kuin C ovat melkoisen kankeita. Forth taas muistuttaa jotain matalan tason parserigeneraattoria."

        Forth muistuttaa sitä, mutta Forth on pinokoneiden kieli ja niissä on päästy
        noin pitkälle, syntaksi minimissään.
        De facto Forth on pinokoneiden äidinkieli.

        Kun ihminen on käsiteajattelija, asia vodaan kuvata yleisesti näin.

        Ihmisen tiedonkäsittelyssä ja Forthin toiminnassa on huomattavia
        samanlaisuutta, ehkä Forthin kehittäjä on intuitiivisesti matkinut
        Forthissaan ihmistä.

        Kehittäjä kutsui Forthia ongelma-orientoituneeksi kieleksi, ehkä tästä syystä.

        Kun ihminen kohtaa ongelman, hän automaattisesti tarkastaa käsitteistöstään
        onko siellä ratkaisuvälineitä, jos ei, niin onko samanlaista asiaa käsitelty
        aikaisemmin. Jos ei, niin hän alkaa rakentamaan tarvittavia käsitteitä,
        tämä vaihe voi kestää vuosikaupalla. Tämän kaiken hän tekee tietoisuuden
        avulla.

        Forthissa ei ole tietoisuutta, joten ohjelmoijan on astuttava puikkoihin.
        Ohjelmoija tarkistaa sanakirjasta onko siellä työvälineitä ongelman
        ratkaisuun, jos ei, niin onko joskus käsitelty saman tyyppistä, eli
        onko sanakirjan luvuissa ideoita, jos ei, niin ohjelmoija alkaa rakentamaan
        uusia käsitteitä Forth ympäristön sanakirjaan. Rivikoodia enter, koodi on
        käännetty ja linkattu sanakirjaan, jokainen uusi sana on kääntäjän käytössä.

        Lopputuloksena on Forth-kielen laajennettu versio, joka on viritetty tuon
        ongelman ratkaisuun.
        Samoin kuin ihmisen ratkaistua oman ongelmansa, hänellä on laajennettu ja
        tehostettu käsitekoneisto myös sellaisten ongelmien ratkaisuun.

        Epäilen että kehittäjä on vaistonvaraisesti kehitellyt itsessään tunnistamansa
        tapahtumaketjun, eräät haastattelukommentit antavat ymmärtää näin.

        Amerikkalaiset käyttävät yleisesti ilmaisua "in terms of", kun terms viittaa
        käsitteisiin, kehittäjä on varmasti kuullut tämän ilmaisun useasti ja tunnistaa
        käsitteiden roolin.

        "Ihmisen tiedonkäsittelyssä ja Forthin toiminnassa on huomattavia
        samanlaisuutta, ehkä Forthin kehittäjä on intuitiivisesti matkinut
        Forthissaan ihmistä."

        Itseasiassa päin vastoin. Forth on pino orientoitunut kieli ja on käsitteellisesti paljon vaikeampi ihmiselle.

        Pino-ohjelmointi ennemminkin matkii sitä miten tietokone käsittelee tietoa. Pino-ohjelmoinnin etu on se, että sellaista kieltä tietokoneen on yksinkertaista tulkita ja generoida mutta ohjelmoinnissa se on yleensä aina huono ratkaisu koska lähdekoodia tulkitsee ensisijaisesti ihminen, ei kone.

        Ihmisten tiedonkäsittelyä voi havainnoida parhaiten ihmisten keskenään käyttämässä kielessä. Näissä toistuu vahvana: subjekti - predikaatti - objekti

        Toinen ihmisen tiedonkäsittelyyn kuuluva ominaisuus on käsittely symboleina. Se näkyy kirjoitetuksessa jossa jokainen merkki on symboli. Tuota voidaan hyödyntää tekemällä DSL:ää visualisesti helposti hahmoitettavana. Ohjelmointi on useinkin visuaalista vaikka se olisi tekstipohjaista, että IDE:t korostavat väreillä ja käytetään sisennystä havainnollistamaan rakennetta.

        "Jos ei, niin hän alkaa rakentamaan tarvittavia käsitteitä,
        tämä vaihe voi kestää vuosikaupalla."

        No ei vie. Kysehän on käytännössä nimen keksimisestä. Jatkuvasti ohjelmoidessa tehdään uusia käsitteitä ja itse useinkin ohjelmoin käsitteen ensiksi ja nimeän sen vaikka perseeksi jos ei sopivampaa ole, ja keksin ymmärrettävän nimeämisen myöhemmin.


      • Anonyymi
        Anonyymi kirjoitti:

        "Ihmisen tiedonkäsittelyssä ja Forthin toiminnassa on huomattavia
        samanlaisuutta, ehkä Forthin kehittäjä on intuitiivisesti matkinut
        Forthissaan ihmistä."

        Itseasiassa päin vastoin. Forth on pino orientoitunut kieli ja on käsitteellisesti paljon vaikeampi ihmiselle.

        Pino-ohjelmointi ennemminkin matkii sitä miten tietokone käsittelee tietoa. Pino-ohjelmoinnin etu on se, että sellaista kieltä tietokoneen on yksinkertaista tulkita ja generoida mutta ohjelmoinnissa se on yleensä aina huono ratkaisu koska lähdekoodia tulkitsee ensisijaisesti ihminen, ei kone.

        Ihmisten tiedonkäsittelyä voi havainnoida parhaiten ihmisten keskenään käyttämässä kielessä. Näissä toistuu vahvana: subjekti - predikaatti - objekti

        Toinen ihmisen tiedonkäsittelyyn kuuluva ominaisuus on käsittely symboleina. Se näkyy kirjoitetuksessa jossa jokainen merkki on symboli. Tuota voidaan hyödyntää tekemällä DSL:ää visualisesti helposti hahmoitettavana. Ohjelmointi on useinkin visuaalista vaikka se olisi tekstipohjaista, että IDE:t korostavat väreillä ja käytetään sisennystä havainnollistamaan rakennetta.

        "Jos ei, niin hän alkaa rakentamaan tarvittavia käsitteitä,
        tämä vaihe voi kestää vuosikaupalla."

        No ei vie. Kysehän on käytännössä nimen keksimisestä. Jatkuvasti ohjelmoidessa tehdään uusia käsitteitä ja itse useinkin ohjelmoin käsitteen ensiksi ja nimeän sen vaikka perseeksi jos ei sopivampaa ole, ja keksin ymmärrettävän nimeämisen myöhemmin.

        "Itseasiassa päin vastoin. Forth on pino orientoitunut kieli ja on käsitteellisesti paljon
        vaikeampi ihmiselle.
        Pino-ohjelmointi ennemminkin matkii sitä miten tietokone käsittelee tietoa. Pino-
        ohjelmoinnin etu on se, että sellaista kieltä tietokoneen on yksinkertaista tulkita ja
        generoida mutta ohjelmoinnissa se on yleensä aina huono ratkaisu koska
        lähdekoodia tulkitsee ensisijaisesti ihminen, ei kone."

        Niin, jotkut kääntäjät käyttävät pinomuistia kääntäessään, mutta piilottavat
        sen ohjelmoijalta. Pinokoneissa parametriliikenne menee pinon kautta, se
        on näkyvissä ja yksinkertaistaa ohjelman tekoa.
        Forth ohjelmoija rakentaa moduleita/sanoja ja huolehtii sanojen välisestä
        viestinnästä, pinoliikenne on hyvin yksinkertaista ja erittäin helppo testata.

        Pinokielten syntaksi on erittäin yksinkertaista, kääntäjä on joustava,
        ohjelmoija tekee vain käsitteiden välisen viestien vaihdon pinon kautta
        ja testaa helposti että pinoliikenne toimii.
        Kun ohjelman faktoroi oikein, eikä kasvata moduleiden/sanojen kokoa
        liian suureksi, pinoliikenne pysyy yksinkertaisena.

        Ei se ole mutkikasta, jos sen oppii oppimisvaikeudesta kärsivä lapsi,
        niin tavallinen aikuinen myös, se on vain tavallisesta eroava tapa
        tehdä ohjelmia ja testata niitä.

        "Ihmisten tiedonkäsittelyä voi havainnoida parhaiten ihmisten keskenään
        käyttämässä kielessä. Näissä toistuu vahvana: subjekti - predikaatti - objekti"

        Niin, tuo kuuluu kielen syntaksiin, mutta ei käsitteiden ominaisuuksiin, kun
        sanoin että käsitteiden rakentaminen voi kestää vuosikaupalla, tarkoitin
        ihmisen omia käsitteitä, että niiden ohjelmointi kestää kauan, en tietokoneen
        ohjelmoinnista, jos sitä tekee työkseen, on syytä olla jossain määrin tehokas.

        Yksi hassu ero tavallisissa kielissä ja pinokielissä on ohjelman vuokaavio,
        tavallisesti kaavio muodostuu laatikoista, jotka on viivoilla ja nuolilla
        kytketty yhteen. Forth-ohjelmoijat eivät tavallisesti tee näitä, vaan
        omia pinoliikenteen kaavioita, jotka ovat tässä tapauksessa selvempiä.

        " Ohjelmointi on useinkin visuaalista vaikka se olisi tekstipohjaista, että IDE:t
        korostavat väreillä ja käytetään sisennystä havainnollistamaan rakennetta."

        Olen joskus käyttänyt niitä, kun koodin faktorointi on kohdallaan, ei
        sisennyksiäkään tarvita, koodin tekee vaikka notepadillä. Kaarisulkeita
        tai aaltosulkeita ei oikeastaan tarvita kuin ehkä kommenteissa ja sanojen
        nimissä. Hakasulkeita joissakin kääntäjän moduleiden nimissä.


      • Anonyymi
        Anonyymi kirjoitti:

        "Itseasiassa päin vastoin. Forth on pino orientoitunut kieli ja on käsitteellisesti paljon
        vaikeampi ihmiselle.
        Pino-ohjelmointi ennemminkin matkii sitä miten tietokone käsittelee tietoa. Pino-
        ohjelmoinnin etu on se, että sellaista kieltä tietokoneen on yksinkertaista tulkita ja
        generoida mutta ohjelmoinnissa se on yleensä aina huono ratkaisu koska
        lähdekoodia tulkitsee ensisijaisesti ihminen, ei kone."

        Niin, jotkut kääntäjät käyttävät pinomuistia kääntäessään, mutta piilottavat
        sen ohjelmoijalta. Pinokoneissa parametriliikenne menee pinon kautta, se
        on näkyvissä ja yksinkertaistaa ohjelman tekoa.
        Forth ohjelmoija rakentaa moduleita/sanoja ja huolehtii sanojen välisestä
        viestinnästä, pinoliikenne on hyvin yksinkertaista ja erittäin helppo testata.

        Pinokielten syntaksi on erittäin yksinkertaista, kääntäjä on joustava,
        ohjelmoija tekee vain käsitteiden välisen viestien vaihdon pinon kautta
        ja testaa helposti että pinoliikenne toimii.
        Kun ohjelman faktoroi oikein, eikä kasvata moduleiden/sanojen kokoa
        liian suureksi, pinoliikenne pysyy yksinkertaisena.

        Ei se ole mutkikasta, jos sen oppii oppimisvaikeudesta kärsivä lapsi,
        niin tavallinen aikuinen myös, se on vain tavallisesta eroava tapa
        tehdä ohjelmia ja testata niitä.

        "Ihmisten tiedonkäsittelyä voi havainnoida parhaiten ihmisten keskenään
        käyttämässä kielessä. Näissä toistuu vahvana: subjekti - predikaatti - objekti"

        Niin, tuo kuuluu kielen syntaksiin, mutta ei käsitteiden ominaisuuksiin, kun
        sanoin että käsitteiden rakentaminen voi kestää vuosikaupalla, tarkoitin
        ihmisen omia käsitteitä, että niiden ohjelmointi kestää kauan, en tietokoneen
        ohjelmoinnista, jos sitä tekee työkseen, on syytä olla jossain määrin tehokas.

        Yksi hassu ero tavallisissa kielissä ja pinokielissä on ohjelman vuokaavio,
        tavallisesti kaavio muodostuu laatikoista, jotka on viivoilla ja nuolilla
        kytketty yhteen. Forth-ohjelmoijat eivät tavallisesti tee näitä, vaan
        omia pinoliikenteen kaavioita, jotka ovat tässä tapauksessa selvempiä.

        " Ohjelmointi on useinkin visuaalista vaikka se olisi tekstipohjaista, että IDE:t
        korostavat väreillä ja käytetään sisennystä havainnollistamaan rakennetta."

        Olen joskus käyttänyt niitä, kun koodin faktorointi on kohdallaan, ei
        sisennyksiäkään tarvita, koodin tekee vaikka notepadillä. Kaarisulkeita
        tai aaltosulkeita ei oikeastaan tarvita kuin ehkä kommenteissa ja sanojen
        nimissä. Hakasulkeita joissakin kääntäjän moduleiden nimissä.

        "Pinokoneissa parametriliikenne menee pinon kautta, se
        on näkyvissä ja yksinkertaistaa ohjelman tekoa."

        No ei yksinkertaista, koska ihminen ei käytä pinoa kommunikoidessaan. Jotkut eläimet voivat käyttää pinon kaltaista rakennetta viestinnässä mutta ihminen käytännössä ei.

        "Forth ohjelmoija rakentaa moduleita/sanoja ja huolehtii sanojen välisestä
        viestinnästä, pinoliikenne on hyvin yksinkertaista ja erittäin helppo testata."

        Itseasiassa ei, siinä on sivuvaikutuksena se itse pino joka tallentaa tilaa. Siitä voidaa push tai pull enemmän kuin mitä pitäisi.

        Testauksen kannalta yksinkertaisinta on puhtaat funktiot, niissä ei ole sivuvaikutuksia. Seuraavaksi yksinkertaisin tapa on joku monadi tai pipe-filter, jolloin ainoa sivuvaikutus on järjestys missä funktioita kutsutaan. Laadukassa koodissa voidaan siis eristää sivuvaikutuksia tällä tavoin.

        "Kun ohjelman faktoroi oikein, eikä kasvata moduleiden/sanojen kokoa
        liian suureksi, pinoliikenne pysyy yksinkertaisena."

        Mutta senkin voi poistaa kuormittamasta ihmistä joka lukee koodia.

        "Niin, tuo kuuluu kielen syntaksiin, mutta ei käsitteiden ominaisuuksiin, kun
        sanoin että käsitteiden rakentaminen voi kestää vuosikaupalla, tarkoitin
        ihmisen omia käsitteitä, että niiden ohjelmointi kestää kauan, en tietokoneen
        ohjelmoinnista, jos sitä tekee työkseen, on syytä olla jossain määrin tehokas."

        Nyt en oikein ymmärtänyt, että kerrotko esimerkin?

        "Yksi hassu ero tavallisissa kielissä ja pinokielissä on ohjelman vuokaavio,
        tavallisesti kaavio muodostuu laatikoista, jotka on viivoilla ja nuolilla
        kytketty yhteen. Forth-ohjelmoijat eivät tavallisesti tee näitä, vaan
        omia pinoliikenteen kaavioita, jotka ovat tässä tapauksessa selvempiä."

        Ei näitä oikein tehdä kun jos on paljon haarautumia, se kertoo siitä että se on huono. Kaavioiden piirtäminen on lähes aina ajanhukkaa.

        "Olen joskus käyttänyt niitä, kun koodin faktorointi on kohdallaan, ei
        sisennyksiäkään tarvita, koodin tekee vaikka notepadillä."

        Värikorostus on ihan ehdoton.


      • Anonyymi
        Anonyymi kirjoitti:

        "Pinokoneissa parametriliikenne menee pinon kautta, se
        on näkyvissä ja yksinkertaistaa ohjelman tekoa."

        No ei yksinkertaista, koska ihminen ei käytä pinoa kommunikoidessaan. Jotkut eläimet voivat käyttää pinon kaltaista rakennetta viestinnässä mutta ihminen käytännössä ei.

        "Forth ohjelmoija rakentaa moduleita/sanoja ja huolehtii sanojen välisestä
        viestinnästä, pinoliikenne on hyvin yksinkertaista ja erittäin helppo testata."

        Itseasiassa ei, siinä on sivuvaikutuksena se itse pino joka tallentaa tilaa. Siitä voidaa push tai pull enemmän kuin mitä pitäisi.

        Testauksen kannalta yksinkertaisinta on puhtaat funktiot, niissä ei ole sivuvaikutuksia. Seuraavaksi yksinkertaisin tapa on joku monadi tai pipe-filter, jolloin ainoa sivuvaikutus on järjestys missä funktioita kutsutaan. Laadukassa koodissa voidaan siis eristää sivuvaikutuksia tällä tavoin.

        "Kun ohjelman faktoroi oikein, eikä kasvata moduleiden/sanojen kokoa
        liian suureksi, pinoliikenne pysyy yksinkertaisena."

        Mutta senkin voi poistaa kuormittamasta ihmistä joka lukee koodia.

        "Niin, tuo kuuluu kielen syntaksiin, mutta ei käsitteiden ominaisuuksiin, kun
        sanoin että käsitteiden rakentaminen voi kestää vuosikaupalla, tarkoitin
        ihmisen omia käsitteitä, että niiden ohjelmointi kestää kauan, en tietokoneen
        ohjelmoinnista, jos sitä tekee työkseen, on syytä olla jossain määrin tehokas."

        Nyt en oikein ymmärtänyt, että kerrotko esimerkin?

        "Yksi hassu ero tavallisissa kielissä ja pinokielissä on ohjelman vuokaavio,
        tavallisesti kaavio muodostuu laatikoista, jotka on viivoilla ja nuolilla
        kytketty yhteen. Forth-ohjelmoijat eivät tavallisesti tee näitä, vaan
        omia pinoliikenteen kaavioita, jotka ovat tässä tapauksessa selvempiä."

        Ei näitä oikein tehdä kun jos on paljon haarautumia, se kertoo siitä että se on huono. Kaavioiden piirtäminen on lähes aina ajanhukkaa.

        "Olen joskus käyttänyt niitä, kun koodin faktorointi on kohdallaan, ei
        sisennyksiäkään tarvita, koodin tekee vaikka notepadillä."

        Värikorostus on ihan ehdoton.

        ""Niin, tuo kuuluu kielen syntaksiin, mutta ei käsitteiden ominaisuuksiin, kun
        sanoin että käsitteiden rakentaminen voi kestää vuosikaupalla, tarkoitin
        ihmisen omia käsitteitä, että niiden ohjelmointi kestää kauan, en tietokoneen
        ohjelmoinnista, jos sitä tekee työkseen, on syytä olla jossain määrin tehokas.""

        "Nyt en oikein ymmärtänyt, että kerrotko esimerkin?"

        Tuo on hyvä kysymys, aihe on mielenkiintoinen, mutta ei sitä tällä palstalla
        voi käsitellä.

        Jos kiinnostaa, lähetä jotain millä saan sähköpostiyhteyden, sen kautta
        voisi yrittää.


      • Anonyymi
        Anonyymi kirjoitti:

        ""Niin, tuo kuuluu kielen syntaksiin, mutta ei käsitteiden ominaisuuksiin, kun
        sanoin että käsitteiden rakentaminen voi kestää vuosikaupalla, tarkoitin
        ihmisen omia käsitteitä, että niiden ohjelmointi kestää kauan, en tietokoneen
        ohjelmoinnista, jos sitä tekee työkseen, on syytä olla jossain määrin tehokas.""

        "Nyt en oikein ymmärtänyt, että kerrotko esimerkin?"

        Tuo on hyvä kysymys, aihe on mielenkiintoinen, mutta ei sitä tällä palstalla
        voi käsitellä.

        Jos kiinnostaa, lähetä jotain millä saan sähköpostiyhteyden, sen kautta
        voisi yrittää.

        Osaakohan teistä kumpikaan ohjelmoida yhtään mitään millään kielellä, on meinaan sellaista sönkkäämistä, josta paistaa läpi ettei keskustelijoilla ole minkäänlaista käsitystä asiasta.


      • Anonyymi
        Anonyymi kirjoitti:

        Osaakohan teistä kumpikaan ohjelmoida yhtään mitään millään kielellä, on meinaan sellaista sönkkäämistä, josta paistaa läpi ettei keskustelijoilla ole minkäänlaista käsitystä asiasta.

        Jos haluaa kritisoida, niin voisi hiukan täsmentää.


      • Anonyymi
        Anonyymi kirjoitti:

        ""Niin, tuo kuuluu kielen syntaksiin, mutta ei käsitteiden ominaisuuksiin, kun
        sanoin että käsitteiden rakentaminen voi kestää vuosikaupalla, tarkoitin
        ihmisen omia käsitteitä, että niiden ohjelmointi kestää kauan, en tietokoneen
        ohjelmoinnista, jos sitä tekee työkseen, on syytä olla jossain määrin tehokas.""

        "Nyt en oikein ymmärtänyt, että kerrotko esimerkin?"

        Tuo on hyvä kysymys, aihe on mielenkiintoinen, mutta ei sitä tällä palstalla
        voi käsitellä.

        Jos kiinnostaa, lähetä jotain millä saan sähköpostiyhteyden, sen kautta
        voisi yrittää.

        En keksi miten saisin rekisteröimättämänä anonyymisti kerrottua anonyymille henkilökohtaisen sähköpostiosoitteeni niin että se ei vuoda ulkopuolisille.


      • Anonyymi
        Anonyymi kirjoitti:

        En keksi miten saisin rekisteröimättämänä anonyymisti kerrottua anonyymille henkilökohtaisen sähköpostiosoitteeni niin että se ei vuoda ulkopuolisille.

        Tässä olisi pari vaihtoehtoa.

        1. Aloitetaan uusi keskustelum, otsikolla "käsitteet ja ohjelmointi"
        tai filosofiapalstalla "Käsitteet", siellä se olisi aika tavallista.

        2. Tehdään lyhytaikainen postilaatikko, johon voi lähettää sähköpostin..
        Kirjoitettuna niin ettei systeemi tunnista sitä osoitteeksi.
        Ongelma voi olla ettei palsta julkista osoitetta, se pitäisi koodata jotenkin.
        Kuten !matti,!muikero!@@!luukku.@fi
        tai forthkoodina:
        matti @ mulkero ! 2 @ luukku . dup fi !
        Tuo käy lähes forthkoodista.

        Jos on rekisteröitynyt, välittääkö Suomi24 toiselle pyynnöstä osoitteen?


      • Anonyymi
        Anonyymi kirjoitti:

        Tässä olisi pari vaihtoehtoa.

        1. Aloitetaan uusi keskustelum, otsikolla "käsitteet ja ohjelmointi"
        tai filosofiapalstalla "Käsitteet", siellä se olisi aika tavallista.

        2. Tehdään lyhytaikainen postilaatikko, johon voi lähettää sähköpostin..
        Kirjoitettuna niin ettei systeemi tunnista sitä osoitteeksi.
        Ongelma voi olla ettei palsta julkista osoitetta, se pitäisi koodata jotenkin.
        Kuten !matti,!muikero!@@!luukku.@fi
        tai forthkoodina:
        matti @ mulkero ! 2 @ luukku . dup fi !
        Tuo käy lähes forthkoodista.

        Jos on rekisteröitynyt, välittääkö Suomi24 toiselle pyynnöstä osoitteen?

        Ehkäpä se vaihtoehto 1. olisi helpompi.


      • Anonyymi
        Anonyymi kirjoitti:

        Ehkäpä se vaihtoehto 1. olisi helpompi.

        Joo, aloita keskustelu, filosofiaosasto olisi luonteva, tosin joitakin voi tulla
        väliin saarnaamaan.


      • Anonyymi
        Anonyymi kirjoitti:

        Joo, aloita keskustelu, filosofiaosasto olisi luonteva, tosin joitakin voi tulla
        väliin saarnaamaan.

        Nimimerkki voisi olla hyvä, tunnistusta varten.


    • Anonyymi

      CP/M käyttöjärjestelmässä oli Fortran kääntäjä.

    • Anonyymi

      Ensimmäinen kokemus oli C-64 basic, sen jälkeen AmigaBasic ja C sekä pascal uusille urille siivitti pc i186 gbasic, konekanta kehittyi 286 ja borland turbo C sekä turbo pascal siitä delphiin, c tuli opeteltua, tykkään enemmän delphistä ja kymppi versioon on jäänyt windows sekä linux mint alustalla, sen enempää en nyt tarvi, toki kone kanta on nyt pari vuotta vanha enkä tarvi enempää uutta ja ihmeellistä vääntöä. Maailmalla on nyt niin paljon freewarea ettei mun kannata enää keksiä pyörää.

    • Anonyymi
      • Anonyymi

        Puhelimiin on saatavissa HP-laskimien emulointia/simulointia.


    • Anonyymi

      Minun ensimmäinen ohjelmointikieleni oli C#, eli olen ilmeisesti tämän keskustelun kommentaattoreiden nuorempaa sukupolvea.

      Opiskelin ensin useamman vuoden matematiikkaa ennen IT-tiedekuntaan loikkaamista ja ohjelmointiharrastuksen aloittamista, ja voin suositella tuota polkua muillekin, jotka tätä alaa harkitsevat. On nimittäin helppoa opiskella ohjelmointia, kun algoritminen ajattelu ja looginen ongelmanratkaisu on jo juurtunut alitajuntaan. Sitten riittää opetella syntaksi.

    • Anonyymi

      Ensimmäinen livenä nähty toimiva tietokoneohjelma oli kahden luvun yhteenlasku Apple II:n Basicilla.
      Ensimmäinen itse tehty ohjelma oli jokin samanlainen Data-Generalin Eclipsellä. Se hakattiin sisään Teletype päätteeltä.

    • Anonyymi

      Olin jotain 8 vuotta kun hakkasin Spectravideon Bacikkia..
      Ensin muuttelin valmiita ohjelmia ja myöhemmin tein niitä itse.

    Ketjusta on poistettu 2 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Miehille kysymys

      Onko näin, että jos miestä kiinnostaa tarpeeksi niin hän kyllä ottaa vaikka riskin pakeista ja osoittaa sen kiinnostukse
      Tunteet
      129
      3497
    2. Miksi kaivattusi on

      erityinen? ❤️‍🔥
      Ikävä
      85
      1825
    3. Olen tosi outo....

      Päättelen palstajuttujen perusteella mitä mieltä minun kaipauksen kohde minusta on. Joskus kuvittelen tänne selkeitä tap
      Ikävä
      15
      1591
    4. Haluaisin jo

      Myöntää nämä tunteet sinulle face to face. En uskalla vain nolata itseäni enää. Enkä pysty elämäänkin näiden kanssa jos
      Ikävä
      54
      1342
    5. VENÄJÄ muuttanut tänään ydinasetroktiinia

      Venäjän presidentti Vladimir Putin hyväksyi tiistaina päivitetyn ydinasedoktriinin, kertoo uutistoimisto Reuters. Sen mu
      Maailman menoa
      90
      1184
    6. Ylen uutiset Haapaveden yt:stä.

      Olipas kamalaa luettavaa kaupungin irtisanomisista. Työttömiä lisää 10 tai enempikin( Mieluskylän opettajat). Muuttavat
      Haapavesi
      107
      1151
    7. Nainen olet valoni pimeässä

      valaiset tietäni tietämättäsi ❤️
      Ikävä
      68
      1069
    8. Mitä toivot

      Tulevilta päiviltä?
      Ikävä
      65
      954
    9. Hommaatko kinkkua jouluksi?

      Itse tein pakastimeen n. 3Kg:n murekkeen sienillä ja juustokuorrutuksella. Voihan se olla, että jonkun pienen, valmiin k
      Sinkut
      80
      905
    10. Oli pakko saada sut suuttumaan

      Muuten et olis jättäny rauhaan. Miks miehet häiritsee intiimeil wa viesteillä vaik kieltää niit tekemästä
      Ikävä
      20
      887
    Aihe